문제 설명
학생들에게 사과를 나눠준다.
사과의 개수는 모두 동일하게 나눠준다.
모두 나눠준 나머지를 최소로 한 값들을 구하시오
풀이
모두 동일하게 나눠주고 남은 최솟값을 구하는것은
사과 / 학생 의 나머지와 같다.
왜냐하면 모든 학생에게 동일한 사과의 개수를 나눠줘야 되기 때문이다.
코드
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import java.util.*; | |
import java.io.*; | |
/** | |
* https://www.acmicpc.net/problem/10833 | |
* BOJ 백준온라인져지 10833 사과 풀이 | |
*/ | |
public class Main { | |
private static BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); | |
public static void main(String args[]) throws IOException { | |
BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); | |
int result = 0; | |
int N = Integer.parseInt(br.readLine()); | |
for (int i = 0; i < N; i++) { | |
StringTokenizer st = new StringTokenizer(br.readLine()); | |
int stus = Integer.parseInt(st.nextToken()); | |
int apples = Integer.parseInt(st.nextToken()); | |
result += apples % stus; | |
} | |
bw.write(String.valueOf(result)); | |
bw.flush(); | |
} | |
} |
문제
경상북도 특산품인 사과를 학생들에게 나눠주기 위해 여러 학교에 사과를 배정하였다. 배정된 사과 개수는 학교마다 다를 수 있고, 학생 수도 학교마다 다를 수 있다. 각 학교에서는 배정된 사과를 모든 학생들에게 똑같이 나눠주되, 남는 사과의 개수를 최소로 하려고 한다. (서로 다른 학교에 속한 학생이 받는 사과 개수는 다를 수 있다.)
예를 들어, 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이하이다.
출력
남은 사과의 총 개수를 나타내는 정수를 출력한다.
예제 입력 1
5 24 52 13 22 5 53 23 10 7 70
예제 출력 1
26
예제 입력 2
3 10 20 5 5 1 13
예제 출력 2
0
'IT > 알고리즘' 카테고리의 다른 글
BOJ 백준온라인져지 1915 가장 큰 정사각형 풀이 (0) | 2018.07.04 |
---|---|
BOJ 백준온라인져지 5014 스타트링크 풀이 (0) | 2018.07.04 |
BOJ 백준온라인져지 2566 최댓값 풀이 (0) | 2018.07.03 |
BOJ 백준온라인져지 2468 안전 영역 풀이 (0) | 2018.07.02 |
BOJ 백준온라인져지 10819 차이를 최대로 풀이 (0) | 2018.07.02 |