분류 전체보기
[프로그래머스] 주차 요금 계산 - 반례
문제 문제 설명 주차장의 요금표와 차량이 들어오고(입차) 나간(출차) 기록이 주어졌을 때, 차량별로 주차 요금을 계산하려고 합니다. 아래는 하나의 예시를 나타냅니다. 요금표 기본 시간(분) 기본요금(원) 단위 시간(분) 단위 요금(원) 180 5000 10 600 입/출차 기록 시각(시:분)차량 번호 내역 05:34 5961 입차 06:00 0000 입차 06:34 0000 출차 07:59 5961 출차 07:59 0148 입차 18:59 0000 입차 19:09 0148 출차 22:59 5961 입차 23:00 5961 출차 자동차별 주차 요금 차량 번호 누적 주차 시간(분) 주차 요금(원) 0000 34 + 300 = 334 5000 + ⌈(334 - 180) / 10⌉ x 600 = 14600 01..
[프로그래머스] 양궁 대회
문제 문제 설명 카카오배 양궁대회가 열렸습니다. 라이언은 저번 카카오배 양궁대회 우승자이고 이번 대회에도 결승전까지 올라왔습니다. 결승전 상대는 어피치입니다. 카카오배 양궁대회 운영위원회는 한 선수의 연속 우승보다는 다양한 선수들이 양궁대회에서 우승하기를 원합니다. 따라서, 양궁대회 운영위원회는 결승전 규칙을 전 대회 우승자인 라이언에게 불리하게 다음과 같이 정했습니다. 어피치가 화살 n발을 다 쏜 후에 라이언이 화살 n발을 쏩니다. 점수를 계산합니다. 과녁판은 아래 사진처럼 생겼으며 가장 작은 원의 과녁 점수는 10점이고 가장 큰 원의 바깥쪽은 과녁 점수가 0점입니다. 만약, k(k는 1~10사이의 자연수)점을 어피치가 a발을 맞혔고 라이언이 b발을 맞혔을 경우 더 많은 화살을 k점에 맞힌 선수가 k ..
9-26[알고리즘] 시간복잡도 학습
TIL 시간 복잡도에 대한 복습 중 알고리즘 관련 강의로 학습 중 점근 표기법과 빅오 표기법에 대하여 학습했던 기억이 있지만 해당 내용을 중요하게 생각하지는 않고 알고리즘 학습을 하고 있었다. 이에 이해도가 부족한 것을 느끼고 시간 복잡도에 대한 추가 학습을 하였다. - 시간복잡도와 공간 복잡도 간략 정리 두 가지 내용은 알고리즘을 평가할 때 사용 시간 복잡도: 알고리즘의 수행 시간을 평가 공간 복잡도: 알고리즘 수행에 필요한 메모리 양을 평가 시간 복잡도와 공간 복잡도는 주로 점근적 표기법 중 빅오 표기법을 이용 이렇게 하는 이유는 최악의 상황일 때의 수행능력을 생각해 볼 수 있기 때문이다. 여기서 빅오 표기법에 대해서 간략하게 설명하자면 점근 표기법에 대한 용어에 대한 설명도 생각해보아야 하는데 점근..
[ETC] 이전 숫자들의 합을 마지막 숫자로 받는 문자열 출력
3번째로 생각나는 문제로 이전 숫자들의 합을 마지막 숫자로 받는 문자열 출력과 관련된 문제가 있었다. 이 각각의 값은 한줄씩 표시되게 되며 1 다음줄은 11 그 다음줄은 112의 구성으로 되어야한다. 처음 문자열의 구성을 보았을때는 다이나믹프로그래밍과 재귀함수를 사용하면 풀이가 쉬울 것이라고 생각하고 구현을 해보았다. - 생각해본 솔루션 def solution(print_str_array): temp_cal = 0 if not print_str_array: print_str_array.append(1) print(*print_str_array) for print_str_array_unit in print_str_array: temp_cal += print_str_array_unit print_str_ar..
[ETC] 파일 이름 저장하기
방금 풀었던 원의 방정식 문제처럼 번외적으로 이번에 풀어볼 문제는 폴더의 파일 이름을 지정할 때 중복되는 이름 옆에 (1)과 같은 것을 구현하는 내용이다 예를 들자면 2022_파리 사진. png가 두 번 연속으로 저장이 시도된다면 나중에 등록되는 사진의 이름이 2022_파리 사진(1). png과 같이 되는 것을 말한다. 특별히 어려운 문제는 아니기에 사용을 할 때 딕셔너리를 이용해서 구현한 점과 이것을 문자열 변환을 이용하여 조금의 조합을 하여 구현하였다는 점 정도만 이야기하면 될 것으로 보이며 해당 문제에 대한 구현은 밑의 내용과 같다. - 생각해본 솔루션 def solution(input, file_name_save): if input not in file_name_save: file_name_sav..
[ETC] 원의 방적식을 이용한 별찍기
최근 접했던 문제 중에 원의 방정식을 이용한 문제가 있었다. 지인의 급한일을 주말동안 도와주는 상황에서도 계속 머릿속에 맴돌아서 어떻게 구현할지 고민하면서 쉴 때마다 메모장에 구현 방법을 생각해보았는데 결론적으로는 난이도가 쉬운 문제여서 뭔가 김빠지는 느낌이있었지만 그 내용을 남긴다. 처음에 구현을 할때 고려했던 것은 원의 방정식의 구성이었다. (x-a)^2 +(y-b)^2 = r^2 이 기준이고 기준점이 되는 a와 b의 개념이 있지만 모양을 만드는 것에만 집중해도 되었기 때문에 이 내용은 뺀다고 생각하여 x^2 +y^2 = r^2 을 사용하려고 생각하였다. 그리고 두 변수의 표현을 2중 for문을 이용하여 순회하면서 체크하면서 된다고 생각하였다. 그리고 2중 for문의 i 와 j를 각각 x와 y에 대입..