-
백준 # 14568Algorithm 2023. 12. 6. 02:06
https://www.acmicpc.net/problem/14568
- 시간 초과로 답을 본 후 풀이
n = int(input()) answer = 0 # 세 명에게 n개의 사탕을 나눠주는 모든 경우의 수 for i in range(1, n + 1): for j in range(1, n + 1): for k in range(1, n + 1): # 주어진 조건을 모두 만족시키기 위해 중첩조건문을 사용 if i + j + k == n: if i % 2 == 0: if j >= k+2: if i >= 1 and j >= 1 and k >= 1: answer += 1 print(answer)
- 고찰
- 정해놓은 시간을 초과해서 답을 봤다. 코드를 보면 이해가 간다. 그런데 세 명에게 입력받은 n개의 사탕을 나눠 주는 모든 경우의 수를 구하기 위해서 1부터 n까지의 범위를 반복하는 for문을 삼중으로 돌고, 주어진 조건을 만족시키기 위해서 각 for문의 범위에 해당하는 요소 i, j, k를 사용한다는 발상을 스스로 해야한다는 점이 쉽지 않다.
'Algorithm' 카테고리의 다른 글
[비대칭키 알고리즘] DH, RSA의 수학적 자물쇠와 그 취약점 보완 (0) 2024.04.17 코드트리 사용 후기 #2 (0) 2024.04.06 코드트리 사용 후기 #1 (0) 2024.03.02 백준 # 15736 (0) 2023.12.07 백준 #1816 (1) 2023.12.05