분류 전체보기
![[Lv.1][python] 체육복](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FsskRt%2FbtrI3xg7iVN%2Fry5FZCgbYP1e1aivzMmoc0%2Fimg.png)
[Lv.1][python] 체육복
https://school.programmers.co.kr/learn/courses/30/lessons/42862# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제는 여기서 확인할 수 있다. def solution(n, lost, reserve): lost.sort() reserve.sort() answer = n - len(lost) for i in range(len(lost)): for l in lost: if l in reserve: answer+=1 lost.remove(l) reserve.remove(l) break for l in lost:..
[Lv.1][python] 완주하지 못한 선수
https://school.programmers.co.kr/learn/courses/30/lessons/42576 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제는 여기서 확인할 수 있다. def solution(participant, completion): answer = '' for i in completion: if i in participant: participant.remove(i) continue answer = participant[0] return answer 그냥 브루트포스로 for문을 돌렸더니 효율성 테스트에서 모두 실패가 났다.....
[Lv.1][python] 같은 숫자는 싫어
https://school.programmers.co.kr/learn/courses/30/lessons/12906 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제는 여기서 확인할 수 있다. def solution(arr): answer = [] for i in range(len(arr)): if ((i != 0) and (arr[i] == arr[i - 1])): arr[i-1] = -1 for i in arr: if(i != -1): answer.append(i) return answer 효율성 테스트가 이루어지는 문제로, 문제의 로직은 인형뽑기 게..
[Lv.1][python] 크레인 인형 뽑기 게임
https://school.programmers.co.kr/learn/courses/30/lessons/64061?language=python3 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제는 여기서 확인할 수 있다. def solution(board, moves): ans_stack = [] answer = 0 finished = 1 for m in moves: for id, row in enumerate(board): if row[m - 1] != 0: ans_stack.append(row[m - 1]) row[m - 1] = 0 break # ..
[Lv.1][python]신고 결과 받기
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제는 여기서 확인할 수 있다. def solution(id_list, report, k): answer = [0 for _ in id_list] dic = {id: [] for id in id_list} enum = {id: idx for idx, id in enumerate(id_list)} #중복 신고 제거 report = list(set(report)) # 회원별 신고한 id 딕셔너리 만들기 for element in report: temp = element.split() dic[temp[1]].app..
![[Swift][iOS][SwiftUI] #0801 json mock 데이터 파싱해서 화면에 뿌리기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FoiBRu%2FbtrIA1DltYs%2FOej5bwRpX0B1LUQyKQo6IK%2Fimg.png)
[Swift][iOS][SwiftUI] #0801 json mock 데이터 파싱해서 화면에 뿌리기
위 영상을 참고해 진행했다! 실제로 서버에서 데이터를 받아오기 전, 프론트에서는 가짜데이터를 만들어서 파싱을 구현하는데, 이 때 만드는 가짜데이터를 mock 데이터라고 한다. 오늘은 이 mock데이터를 파싱해서 화면에 리스트로 뿌려보았다. 1. mock 데이터 생성하기 [ { "id": 1, "code" : "String", "title": "방제", "type": "팀전", "level": 15, "max_participant": 2, "password": "mockpasswd", "created_user_id": "" }, { "id": 2, "code" : "String", "title": "방제1", "type": "팀전", "level": 20, "max_participant": 4, "pass..
![[코틀린][안드로이드] #0721 계산기 앱 만들기 - 3](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbaIQbJ%2FbtrHT2aILHh%2FNb53wVv5dK6tOh7tjKFytk%2Fimg.gif)
[코틀린][안드로이드] #0721 계산기 앱 만들기 - 3
이때까지 한 걸 되돌아보자. splash 애니메이션과 계산기 버튼을 누를 경우 연산자와 피연산자를 나누어 로그에 띄우는 것까지 완료하였다. 이제 본격적으로 계산 로직을 짜보자. 1. 값을 받아 계산하기 여기서 괄호를 쓰지는 않기 때문에 후위연산자를 사용하지는 않을 것이다. 다만, 곱셈과 나눗셈을 먼저 계산한 후 덧셈뺄셈 계산하는 부분에 전달할 것이다. class CalcUtil { fun getResult(expr: String): Double{ val calcUnits: List = expr.split(" ") as MutableList val handleUnits = ArrayList() val result= ArrayList() var i = 0 while(i < calcUnits.size){ if..
![#0720 [안드로이드][코틀린] 계산기 앱 만들기 - 2](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FPv4PB%2FbtrHN3tTbXm%2FGm9waEmkvkUKuX6rqflvvK%2Fimg.png)
#0720 [안드로이드][코틀린] 계산기 앱 만들기 - 2
시작하기 앞서, 이때까지 한 작업을 되돌아보자. 사진과 애니메이션(lottie json)을 통해 로딩화면을 구상하였고, 비동기처리를 통해 3초후에 계산기 화면이 띄워지도록 하였다. 계산기 화면도 간단하게 구상하였다. 그럼 먼저 계산기 버튼을 다듬어보자 1. 계산기 버튼 다듬기 우선, 버튼의 text를 아래와 같이 수정한다. 2. 버튼 입력이 UI에 반영되게 하는 코드 작성 class MainActivity : AppCompatActivity() { private var activityMainBinding : ActivityMainBinding? = null private var liveExpr : MutableLiveData = MutableLiveData("") override fun onCreate(..