본문 바로가기

파이썬 코딩테스트62

프로그래머스 / 영어 끝말잇기 / 파이썬 def solution(n, words): list_ = [words[0]] for i in range(1, len(words)): if words[i-1][-1] != words[i][0]: return [i%n +1, i//n+1] if words[i] in list_: return [i%n +1, i//n+1] list_.append(words[i]) return [0,0] 2022. 10. 6.
프로그래머스 / 짝지어 제거하기 / 파이썬 def solution(s): right = [] for i in s: if len(right) == 0: right.append(i) elif right[-1] == i: right.pop() else: right.append(i) if right: return 0 return 1 2022. 10. 6.
프로그래머스 / 다음 큰 숫자 / 파이썬 def ChangeAndCount(n): a = "" while n > 1: a += str(n % 2) n = n//2 a += "1" return a.count("1") def solution(n): num_1 = ChangeAndCount(n) while True: n = n+1 if ChangeAndCount(n) == num_1: return n 2022. 9. 20.
프로그래머스 / 피보나치 수 / 프로그래머스 def solution(n): n_0 = 0 n_1 = 1 if n == 0: return n_0 if n == 1: return n_1 for i in range(2, n+1): num_ = n_0 + n_1 n_0 = n_1 n_1 = num_ return n_1%1234567 def solution(n): n_0, n_1 = 0, 1 for i in range(n): n_0, n_1 = n_1, n_0+n_1 return n_0%1234567 2022. 9. 17.
프로그래머스 / 숫자의 표현 / 파이썬 def solution(n): answer = 0 for i in range(1, n+1): sum_ = 0 while i n: break i += 1 return answer 2022. 9. 17.
프로그래머스 / 최솟값 만들기 / 파이썬 def solution(A,B): answer = 0 A.sort() B.sort(reverse=True) for i in range(len(A)): answer += A[i]*B[i] return answer 2022. 9. 17.
프로그래머스 / JadenCase / 파이썬 def solution(s): answer = '' s = s.lower() for i in range(len(s)): if i == 0: answer += s[i].upper() continue if s[i-1] == " ": answer += s[i].upper() continue answer += s[i] return answer 2022. 9. 17.
프로그래머스 / 프린터 / 파이썬 def solution(priorities, location): num_list = [(i,p) for i,p in enumerate(priorities)] answer = 0 while True: current = num_list.pop(0) if any(current[1] 2022. 9. 14.
프로그래머스 / 올바른 괄호 / 파이썬 def solution(s): num_left = 0 for i in s: if i == "(": num_left += 1 else: num_left -= 1 if num_left < 0: return False if num_left == 0: return True return False 간단하게 ( 이면 1을 더하고 ) 면 1을 빼는 방식으로 접근하면 된다. for문 즉, s를 한바퀴 도는 도중에 음수로 넘어가면 올바르지 않은 괄호 확정이며 다 돌았을 때 0이 아니면 올바르지 않은 괄호이다. 2022. 9. 14.