문제설명
소스코드
import java.util.Scanner;
public class Main
{
public static void main(String[] args) throws Exception
{
Scanner sc = new Scanner(System.in);
while(sc.hasNextInt())
{
int n = sc.nextInt();
int k = sc.nextInt();
int ans = n;
int stamps;
while(n >= k)
{
stamps = n / k;
ans += stamps;
n = stamps + (n % k);
}
System.out.println(ans);
}
}
}
설명
- 코드가 간단하기 때문에 코드에 대한 설명은 필요없을 것 같다.
- 문제를 보면 테스트케이스의 종료조건이 명시되어있지 않다.
또한 입력이 한 줄 한 줄 순서대로 입력되는게 아니라 한번에 여러 줄이 입력이 들어오기 때문에 EOF문제를 처리해주어야 한다 - 자바에서 EOF문제를 처리하는 것은 Scanner를 쓰느냐 아니면 BufferedReader를 쓰느냐에 따라서 달라진다.
Scanner
Scanner sc = new Scanner(System.in); while(sc.hasNext()) { //sc.nextInt(); //실행할 코드 }
BufferedReader
BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String str = ""; while((str = br.readLine()) != null) { //실행할 코드 }
'자료구조 & 알고리즘 > BOJ' 카테고리의 다른 글
[Java] 백준 11279번 문제 (최대 힙) (0) | 2023.10.22 |
---|---|
[Java] 백준 1927번 문제 (최소 힙) (0) | 2023.10.22 |
[Java] 백준 1918번 문제 (후위 표기식) (0) | 2023.10.18 |
[Java] 백준 1935번 문제 (후위 표기식2) (0) | 2023.10.17 |
[Java] 백준 11869번 문제 (님블) (1) | 2023.10.05 |