
문제 프로그래머스 2018 서머코딩- 소수만들기 https://programmers.co.kr/learn/courses/30/lessons/12977 풀이 조합 리스트(temp)를 만들고, 소수를 저장하는 리스트(primes)를 만들어 temp의 합을 primes와 비교하는 방법으로 풀었다. combinations를 이용해 조합을 만들었고, 에라토스테네스의 체를 이용해 소수를 구했다. 코드 from itertools import combinations def solution(nums): ans=0 temp = list(combinations(nums,3)) n=10000 a = [False,False] + [True]*(n-1) primes=[] for i in range(2,n+1): if a[i]: ..

문제 프로그래머스 2018 서머코딩- 점프와 순간이동 https://programmers.co.kr/learn/courses/30/lessons/12980 풀이 순간이동으로 최대한 많이 이동해야 건전지 사용량이 최소가 된다. 최댓값 n에서 2로 나누면서 값을 확인한다. n이 홀수일 (n-1)/2 해준다. 건전지 사용량 1 증가시킨다. n이 1되면 종료 코드 def solution(n): ans = 1 while True: if n ==1: break; if n % 2 == 0: n=n/2 else: n=(n-1)/2 ans +=1 return ans

문제 프로그래머스 2018 서머코딩- 기지국 설치 https://programmers.co.kr/learn/courses/30/lessons/12979 풀이 모든 영역을 커버할 수 있는 기지국을 최소로 설치하는 문제이다. 설치 할 기지국의 영역이 설치 된 기지국의 영역과 겹치지 않으면서, 최대로 활용되는 것이 최적해이다. 설치 된 기지국 영역에 속하지 않으면 기지국을 설치하고 기지국이 가질 수 있는 최대 영역(2*w+1)만큼 현재 위치를 이동시킨다. 영역에 속한다면 기지국 영역의 +1로 현재 위치를 이동시키고, index를 증가시켜 다음 기지국을 기준으로 다시 반복하여 최적의 설치 개수를 구할 수 있다. 코드 def solution(n, s, w): answer=0 idx = 0 locate = 1 wh..