728x90
문제

입력

출력

문제 분석
가장 작은 숫자를 만들기 위해서는 ***00 부터 하나하나 증가되는 방식이다.
1. ***00 으로 몫을 구함
2-1. ***00 의 나머지가 0 => 해당 숫자가 나눠진다!
2-2. ***00 의 나머지가 0 이 아님 => (해당 몫 + 1)*F 를 하면 원하는 값중 가장 작은 값이다.
풀이
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
// https://www.acmicpc.net/problem/1075
/**
* 1. 00을 넣고 몫을 구함
* 2. 거기서 +1을 해서 뒤에 두자리를 추출
*/
InputStreamReader inputStreamReader = new InputStreamReader(System.in);
BufferedReader bf = new BufferedReader(inputStreamReader);
int N = Integer.parseInt(bf.readLine());
int F = Integer.parseInt(bf.readLine());
N = (N/100)*100;
int share = N/F;
int remain = N%F;
String answer = "";
answer = remain == 0 ? String.valueOf(N) : String.valueOf ((share+1)*F);
System.out.println(answer.substring(answer.length()-2, answer.length()));
}
}
알고리즘 분류
더보기
- 수학
- 브루트포스 알고리즘
728x90
반응형
LIST