반응형
https://www.acmicpc.net/problem/7523
7523번: Gauß
각 테스트 케이스마다 "Scenario #i:"를 출력한 다음, n부터 m까지 모든 정수의 합을 출력한다. 각 테스트 케이스 사이에는 빈 줄을 하나 출력한다.
www.acmicpc.net
수학 문제였습니다.
📕 풀이방법
📔 입력 및 초기화
1. 테스트 케이스의 개수 n을 선언 후 입력해줍니다.
2. 그 후 n만큼 for loop를 수행하며 a, b를 선언해 입력 받습니다.
📔 풀이과정
a <= b이므로 (1부터 b까지 연속된 수의 합) - (1부터 a-1까지 연속된 수의 합)이 답이됩니다. 연속된 수의 합은 가우스의 공식 n * (n + 1) / 2입니다.
📔 정답출력
출력형식에 맞게 출력해줍니다.
📕 Code
def sum(num):
return num * (num + 1) // 2
n = int(input())
for i in range(1,n+1):
a, b = map(int, input().split())
print("Scenario #%d:"%(i))
print(sum(b)-sum(a-1))
print()
'Algorithm > Math' 카테고리의 다른 글
(C++) - 백준(BOJ) 8246 : Stół (0) | 2022.01.25 |
---|---|
(C++) - 백준(BOJ) 7770 : 아즈텍 피라미드 (0) | 2022.01.18 |
(C++) - 백준(BOJ) 6696 : Too Much Water (0) | 2021.12.28 |
(C++) - 백준(BOJ) 8674 : Tabliczka (0) | 2021.12.21 |
(C++) - 백준(BOJ) 3507 : Automated Telephone Exchange (0) | 2021.11.30 |