Problem Solving

86. 쉽게 푸는 문제

굥깡 2023. 1. 18. 01:25
728x90

https://www.acmicpc.net/problem/1292

 

1292번: 쉽게 푸는 문제

첫째 줄에 구간의 시작과 끝을 나타내는 정수 A, B(1 ≤ A ≤ B ≤ 1,000)가 주어진다. 즉, 수열에서 A번째 숫자부터 B번째 숫자까지 합을 구하면 된다.

www.acmicpc.net

1, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, .... 로 이어지는 수열에서 a번째 수부터 b번째 수까지의 합을 구하는 문제

a, b = map(int, input().split())
numbers = []
answer = 0
for i in range(1, 50):
    numbers = numbers + [i] * i
for i in range(a, b + 1):
    answer = answer + numbers[i - 1]
print(answer)

a와 b를 포함한 범위 내의 수를 모두 더하는 문제인가 했지만 아니었음

a와 b의 범위를 1000 이하라고 지정해줬기 때문에 넉넉하게 범위를 50으로 잡고 리스트 생성 후 계산하는 식으로 풂