반응형 CODE10 [프로그래머스] 가장 많이 받은 선물 python 풀이 문제 카카오 겨울 인턴십 기출문제로 난이도는 낮지만 정답률도 낮은 문제라 가져와 봤다. 구현 시뮬레이션은 쉽지만 어떤 타입의 변수에 입력값들을 담아야 할지가 이 문제의 키라고 생각한다.모두 배열로 만들어 매번 배열의 index를 찾게 하는 것보다는dict에 담아서 조금 더 시간의 효율을 얻고 싶었다. 아래 코드에서 살펴보자코드 f에 각 이름 별 index를 담았고나머지는 리스트에 다 담았다. 시뮬레이션 로직은 최 하단의 for문 밖에 없어서 문제 자체는 쉽다.그래서 어떤 data type을 사용할지가 중요한 문제라고 생각된다.다른 풀이 많은 사람들이 이 방식으로 풀었고, 더 좋은 방식은 보이지 않아서 다른 풀이는 가져오지 않았다. 2024. 12. 21. [프로그래머스] 붕대 감기 python 풀이 문제 문제 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/250137 구현 시간에 따라 반복하면 매우 비효율적이기 때문에attack 배열을 반복하면서 각 attack 사이의 delta 값을 위주로 계산해서 풀이 하려고 했다. 아래 코드를 보면 조금 더 쉽게 이해할 수 있을 것이다.코드 조금 잘리긴 했지만 설명을 하자면 각 attack time 간격을 계산해서 delta_time에 넣었다.공격당하기 전까지의 시간까지 회복할 수 있으니 -1을 해줬다.health의 최대치를 넘지 않게 해 주었고, 회복을 완료할만한 시간이 있었는지는 //연산으로 계산한 후 damage만큼 빼줬다. 계산식은 아래와 같다.health = min(max_healt.. 2024. 12. 20. [프로그래머스] 체육복 C++ Code 2022.08.10 - [Coding Test/Python] - [프로그래머스] 체육복 Python Code 저번 python 포스트에 이어서 C++로 하겠다. C++에서 벡터의 차집합을 쓰기에는 함수가 복잡하고 외우기 힘들 것 같아서 메모리를 조금 더 사용하는 방법을 선택하여 구현 방식이 다르다. 문제 문제가 자세하게 나와있다. 체육복을 도난당한 학생들이 자신의 바로 앞, 뒤 번호인 학생의 체육복을 빌려서 체육수업을 들을 수 있는 학생의 최댓값을 리턴하면 된다. 구현 방법 이번 구현 로직은 사실 파이썬과 비슷하게 짰었는데 지저분 해서 다른 사람 풀이의 구현을 가져왔다. 먼저 최대 학생수가 30명이기에 길이 30짜리 student 배열을 만들고 lost와 reserve를 각각 돌며 학생 배열을 초기화 했.. 2022. 8. 10. [프로그래머스] 예산 Python Code 프로그래머스 코딩 테스트 연습문제인 예산을 Python으로 풀어보겠다. 참고로 이 문제는 Go가 없으므로 JavaScript, C++ 만 올릴 예정이다. 문제 이번 문제도 매우 쉽게 이해할 수 있다. 주어진 예산 안에서 최대한 많은 팀에게 지원해주어야 하고, 몇 개의 팀에 지원이 되었는지 답으로 return 하면 된다. 구현 방법 신청한 금액의 list d를 오름차순으로 sorting하고 돌며 budget에서 빼며 count 하고 budget이 0 미만이 되면 count 된 값을 return 하는 방식으로 구현했다. Code def solution(d, budget): answer = 0 d.sort() for cost in d: budget -= cost if budget 2022. 8. 10. 이전 1 2 3 다음 반응형