dbinc 4

[Python]COS_PRO_기출 3회차[6-10]풀이

6번 소수의 합으로 표현하기 def solution(n): answer = 0 primes = [2] for i in range (3, n + 1, 2) : is_prime = True for j in range(2, i) : if i % j == 0 : is_prime = False break if is_prime == True : primes.append(i) prime_len = len(primes) for i in range(0, prime_len - 2) : for j in range(i + 1, prime_len - 1) : for k in range(j + 1, prime_len) : if primes[i]+primes[j]+primes[k] == n : answer += 1 return a..

[Python]COS_PRO_기출 3회차[1-5]풀이

1번 배열을 회전시켜보세요 def solution(arrA, arrB): if len(arrA) != len(arrB): return False if func_b(arrA,arrB): arrA_temp = func_a(arrA) if func_c(arrA_temp, arrB): return True return False 2번 팰린드롬 문제 def solution(s, k): palindromes = [] length = len(s) for start_idx in range(length): for cnt in range(1, length - start_idx + 1): sub_s = s[start_idx : start_idx + cnt] if func_b(sub_s) == True: if func_a(p..

[Python]COS_PRO_기출2회차[6-10]풀이

6번 로봇을 움직여주세요 뇌 안쓰고 간단하게 만든 def solution(commands): answer = [0,0] for c in list(commands) : if c == 'L' : answer[0]-=1 elif c== 'R' : answer[0]+=1 elif c== 'U' : answer[1]+=1 else : answer[1]-=1 return answer 글자와 방향을 zip으로 묶고 dict를 이용해서 딕셔너리로 만든다. 딕셔너리의 key를 이용해서 dx,dy를 구하고 rx,ry에 연산한다. def solution(commands): answer = [0,0] move = dict(zip('LRUD',[[-1,0],[1,0],[0,1],[0,-1]])) rx,ry = 0,0 for c..

[Python]COS_PRO_기출2회차[1-5]풀이

1번 도서 대여점 운영 class Book(metaclass=ABCMeta): @abstractmethod def get_rental_price(self, day): pass class ComicBook(Book): def get_rental_price(self,day): cost = 500 day -= 2 if day > 0: cost += 200*day return cost class Novel(Book): def get_rental_price(self,day): cost = 1000 day -= 3 if day > 0: cost += 300*day return cost 2번 지하철 기다리기 def solution(subway_times, current_time): current_minute = fu..