본문 바로가기
코딩테스트 문제풀이(Python)

백준 10833번 문제풀이

by chanfficial 2022. 4. 15.

10833. 사과

 


경상북도 특산품인 사과를 학생들에게 나눠주기 위해 여러 학교에 사과를 배정하였다. 배정된 사과 개수는 학교마다 다를 수 있고, 학생 수도 학교마다 다를 수 있다. 각 학교에서는 배정된 사과를 모든 학생들에게 똑같이 나눠주되, 남는 사과의 개수를 최소로 하려고 한다. (서로 다른 학교에 속한 학생이 받는 사과 개수는 다를 수 있다.)

예를 들어, 5개 학교의 학생 수와 배정된 사과 수가 다음과 같다고 하자.

학교 A B C D E
학생 수 24 13 5 23 7
사과 개수 52 22 53 10 70

A 학교에서는 모든 학생에게 사과를 두 개씩 나눠주고 4개의 사과가 남게 된다. B 학교에서는 모든 학생에게 사과를 한 개씩 나눠주고 9개의 사과가 남게 된다. 비슷하게 C 학교에서는 3개의 사과가, D 학교에서는 10개의 사과가, E 학교에서는 0개의 사과가 남게 되어, 남는 사과의 총 수는 4+9+3+10+0 = 26이다.

각 학교의 학생 수와 사과 개수가 주어졌을 때, 학생들에게 나눠주고 남는 사과의 총 개수를 구하는 프로그램을 작성하시오.


입력 : 첫 번째 줄에는 학교의 수를 나타내는 정수 N (1 ≤ N ≤ 100)이 주어진다. 다음 N 개의 줄에 각 학교의 학생 수와 배정된 사과 개수를 나타내는 두 개의 정수가 주어진다. 학생 수와 사과 개수는 모두 1이상 100이하이다. 

출력 : 남은 사과의 총 개수를 나타내는 정수를 출력한다.

 

ex)

입력 :

5
24 52
13 22
5 53
23 10
7 70
출력 :
26​

 

 

 

풀이

n = int(input())
sum = 0

for i in range(n):
    student, apple = map(int, input().split())
    sum += apple % student

print(sum)

- 먼저 n개의 학교를 입력받은 다음 학교의 수만큼 반복하며 학생 수(student)와 사과 개수(apple)를 입력 받게했다. 학생들에게 나눠주고 남는 사과의 총 개수(sum)는, 사과 개수에서 학생 수를 나눈 나머지 값을 사과의 총 개수에 반복하며 더해지도록 했다.

'코딩테스트 문제풀이(Python)' 카테고리의 다른 글

백준 2442번 문제풀이  (0) 2022.04.17
백준 9325번 문제풀이  (0) 2022.04.15
백준 10952번 문제풀이  (0) 2022.04.14
백준 10984번 풀이  (0) 2022.04.14
백준 10950번 문제풀이  (0) 2022.04.12