[Python] 키패드 누르기
코딩테스트 연습 - [1차] 비밀지도 비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다 programmers.co.kr 풀이 스마트폰에서의 키패드의 [i, j]위치를 미리 리스트에 초기화 하여 만약 2, 5, 8, 0을 누르게 됬을 때, 점과 점사이의 거리를 구할 수 있게 하여 해결했습니다. 처음 시작할 때 왼쪽 손이 위치한 '*'의 위치와 오른 손이 위치한 '#'의 [i, j] 위치를 꼭 초기화 해야함을 주의해야 합니다. 코드 def solution(numbers, hand): answer = '' phone = [[1, 4, 7], [2, 5, 8, 0], [3, 6,..
2021. 2. 27.
[Python] 2016년
코딩테스트 연습 - 2016년 2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까 programmers.co.kr 풀이 총 일수를 구하고 일주일은 7일 이므로 총 일수에 7을 나머지연산하여 해결했습니다. 코드 def solution(a, b): answer = '' month = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] day = ["THU", "FRI", "SAT", "SUN", "MON", "TUE", "WED"] total_day = b for i in range(0, a - 1): ..
2021. 2. 21.
[Python] K번째수
코딩테스트 연습 - K번째수 [1, 5, 2, 6, 3, 7, 4] [[2, 5, 3], [4, 4, 1], [1, 7, 3]] [5, 6, 3] programmers.co.kr 풀이 리스트의 slice를 이용하여 commands에 주어진 i에서 j까지 array를 잘라 새로운 리스트를 만들고 리스트의 sort()를 사용하여 새로운 리스트에서 오름차순으로 정렬된 k번째 수를 구하여 해결했습니다. 코드 def solution(array, commands): answer = [] for command in commands: slice_arr = array[command[0] - 1:command[1]] slice_arr.sort() answer.append(slice_arr[command[2] - 1]) r..
2021. 2. 20.
[Python] 모의고사
코딩테스트 연습 - 모의고사 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 programmers.co.kr 풀이 각각의 학생들의 정답 순서를 입력받은 답안과 비교하여 맞은 개수를 리스트에 저장하고 enumerate를 사용해서 리스트 중 최고점수와 같은 점수를 갖고있는 인덱스를 정답 리스트에 저장하여 해결하였습니다. 코드 def solution(answers): p = [] p.append([1, 2, 3, 4, 5]) p.append([2, 1, 2, 3, 2, 4, 2, 5]) p.append([3, 3, 1, 1, 2, 2, 4, 4, 5, 5]) cnt = [0..
2021. 2. 12.