반응형 알고리즘/dynamic programming27 [백준][Python] 17626번 Four Squares 17626번: Four Squares 라그랑주는 1770년에 모든 자연수는 넷 혹은 그 이하의 제곱수의 합으로 표현할 수 있다고 증명하였다. 어떤 자연수는 복수의 방법으로 표현된다. 예를 들면, 26은 52과 12의 합이다; 또한 42 + 32 + 1 www.acmicpc.net 코드 n = int(input()) n_list = [0]*(n+1) n_list[1] = 1 for i in range(2,n+1): j = 1 min_v = 4 while((j**2) 2022. 5. 9. [백준][Python] 9655번 돌 게임 9655번: 돌 게임 상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다. www.acmicpc.net 코드 n = int(input()) if n%2 == 0: print("CY") else: print("SK") 설명 돌을 1개 또는 3개 가져갈 수 있기 때문에 N이 짝수이면 무조건 짝수 번째에 가져가는 사람이 이긴다. 따라서 주어진 수가 짝수이면 창영이가 이기고 홀수이면 상근이가 이긴다. 2022. 5. 7. [백준][Python] 1010번 다리 놓기 1010번: 다리 놓기 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트케이스에 대해 강의 서쪽과 동쪽에 있는 사이트의 개수 정수 N, M (0 < N ≤ M < 30)이 주어진다. www.acmicpc.net 코드 import sys import math n = int(input()) for _ in range(n): a, b = map(int,sys.stdin.readline().split()) ans = math.factorial(b)//(math.factorial(b-a)*math.factorial(a)) print(ans) 설명 a와 b를 입력받으면 b가 a보다 항상 크거나 같기 때문에 b개 중에 a개를 뽑는 경우의 수를 구하면 된다. 다리끼리 겹치면 안되므로.. 2022. 5. 5. 이전 1 ··· 4 5 6 7 다음 반응형