목록CodingTest/programmers (96)
기억은 짧고 기록은 길다

Link 코딩테스트 연습 - 완주하지 못한 선수 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수 programmers.co.kr Solution 해당 문제는 sort(), sorted()를 사용하면쉽게 해결할 수 있는 문제이다. 하지만 Counter(), hash()등으로도 간단하게 해결가능하며 더 효율적으로 해결할 수 있다. 필자는 이번 문제를 통해 Counter()끼리의 - 연산이 가능하다는것과 hash()의 활용법을 알게 되었다. def solution(participant, completion): answer = '' p = sorted(particip..

Link 코딩테스트 연습 - 약수의 합 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. 제한 사항 n은 0 이상 3000이하인 정수입니다. 입출력 예 n return 12 28 5 6 입출력 예 설명 입출력 예 #1 12의 약수 programmers.co.kr Solution def solution(n): return n + sum([i for i in range(1, n // 2 + 1) if n % i == 0]) 🔑 key point: range(1, n // 2 + 1)

Link 코딩테스트 연습 - 시저 암호 어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. 예를 들어 "AB"는 1만큼 밀면 "BC"가 되고, 3만큼 밀면 "DE"가 됩니다. "z"는 1만큼 밀 programmers.co.kr Solution def solution(s, n): answer = '' for i in s: if i == ' ': answer += ' ' continue r = ord(i)+n if r > 122 and 97

Link 코딩테스트 연습 - 수박수박수박수박수박수? 길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다. 제한 programmers.co.kr Solution def solution(n): return '수박' * (n // 2) + '수' * (n % 2) 📌 Tip: Indexing Other Solution def solution(n): return ("수박" * n)[:n]

Link 코딩테스트 연습 - 소수 찾기 1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 만들어 보세요. 소수는 1과 자기 자신으로만 나누어지는 수를 의미합니다. (1은 소수가 아닙니다.) 제한 조건 n은 2이상 programmers.co.kr Solution 해당 문제는 에라토스테네스의 체를 사용하지 않으면 효율성 테스트를 통과할 수 없다. 에라토스테네스의 채는 (int(n ** 0.5) + 1)까지의 수들의 배수들을 지워나가며 소수를 구해내는 방법이다. def solution(n): sieve = [True] * (n + 1) m = int(n ** 0.5) for i in range(2, m + 1): if sieve[i] == True: for j in rang..

Link 코딩테스트 연습 - 서울에서 김서방 찾기 String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니 programmers.co.kr Solution def solution(seoul): return f"김서방은 {seoul.index('Kim')}에 있다" 🔑 key point: index()