https://www.acmicpc.net/problem/1024
1024번: 수열의 합
첫째 줄에 N과 L이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이고, L은 2보다 크거나 같고, 100보다 작거나 같은 자연수이다.
www.acmicpc.net
n, l = map(int, input().split())
for i in range(l, 101):
x = n / i - (i + 1) / 2
if int(x) == x:
x = int(x)
if x + 1 >= 0:
for j in range(x + 1, x + i + 1):
print(j, end=" ")
break
else:
print(-1)
브루트 포스로 풀면 시간 초과가 나는 문제.
마지막 else문에 대해서 의아하게 생각할 수도 있다.
for 문이 break를 만나지 않고 정상적으로 종료되었을 때 else로 진입이 가능하다.
'백준 알고리즘 (Baekjoon Algorithm)' 카테고리의 다른 글
[파이썬] 백준 알고리즘 No.2641 다각형그리기 - Deque / Rotate (2) | 2024.01.23 |
---|---|
[파이썬] 백준 알고리즘 No.15815 천재 수학자 성필 (후위 연산자) (0) | 2024.01.19 |
[파이썬] 백준 알고리즘 No.1308 D-Day (0) | 2024.01.16 |
[파이썬] 백준 알고리즘 No.2477 참외밭 (2) | 2023.02.18 |
[파이썬] 백준 알고리즘 No.11478 서로 다른 부분 문자열의 개수 (0) | 2023.02.18 |