문제
강민이는 치킨 한 마리를 주문할 수 있는 치킨 쿠폰을 n장 가지고 있다. 이 치킨집에서는 치킨을 한 마리 주문할 때마다 도장을 하나씩 찍어 주는데, 도장을 k개 모으면 치킨 쿠폰 한 장으로 교환할 수 있다.
강민이가 지금 갖고 있는 치킨 쿠폰으로 치킨을 최대 몇 마리나 먹을 수 있는지 구하여라. 단, 치킨을 주문하기 위해서는 반드시 치킨 쿠폰을 갖고 있어야 한다.
입력
여러 줄에 걸쳐서 자연수 n과 k가 주어진다.
출력
각 입력마다 한 줄에 정답을 출력한다.
제한
- 1 < k ≤ n ≤ 1,000,000,000
예제 입/출력
코드
풀이
1. 우선 입력값에 제한이 없기때문에 EOFError가 나면 코드가 멈추도록 while문 안에 try/except 를 사용
2. 들고있는 치킨쿠폰 N과 치킨으로 바꾸는데 필요한 쿠폰 갯수 k를 입력 받고 C는 먹을수 있는 치킨 수로 N만큼은 무조건 먹기 때문에 C=N으로 잡는다
3.while 문을 이용하여 들고있는 쿠폰수가 k보다 작을때까지 반복해주고 R은 들고있는 치킨쿠폰 수 N을 사용하고 남은 쿠폰 수이고 N은 다시 받은 쿠폰의 수면서 바꿔먹은 치킨의 수이기 때문에 C에 N만큼 더해준다 그리고 남은 총 쿠폰 수는 바꿔먹고 받은 쿠폰수 + 남은 쿠폰 수이기 때문에 N=N+R로 잡아준다
4. 마지막으로 치킨의 수를 print해준다
'Koala - 13기 > 기초 알고리즘 스터디' 카테고리의 다른 글
[백준/C++] 9226: 도깨비 (0) | 2024.01.21 |
---|---|
[백준/C++] 9012: 괄호 (0) | 2024.01.21 |
[백준/Python] 3449번 : 해밍 거리 (0) | 2024.01.21 |
[백준/Python] 2745번 : 진법 변환 (0) | 2024.01.20 |
[BOJ/java] 6502번 동혁피자 (0) | 2024.01.20 |