๋ฌธ์
๋ฌธ์ ๋งํฌ https://www.acmicpc.net/problem/2839
- ์ฌํ๊ฐ๊ฒ์ ์คํ์ ์ ํํ๊ฒ Nํฌ๋ก๊ทธ๋จ์ ๋ฐฐ๋ฌํด์ผ ํ๋ค.
- ๋ด์ง๋ 3ํฌ๋ก๊ทธ๋จ ๋ด์ง์ 5ํฌ๋ก๊ทธ๋จ ๋ด์ง๊ฐ ์๋ค.
- ์๊ทผ์ด๋ ๊ท์ฐฎ๊ธฐ ๋๋ฌธ์, ์ต๋ํ ์ ์ ๋ด์ง๋ฅผ ๋ค๊ณ ๊ฐ๋ ค๊ณ ํ๋ค.
- ์๋ฅผ ๋ค์ด, 18ํฌ๋ก๊ทธ๋จ ์คํ์ ๋ฐฐ๋ฌํด์ผ ํ ๋, 3ํฌ๋ก๊ทธ๋จ ๋ด์ง 6๊ฐ๋ฅผ ๊ฐ์ ธ๊ฐ๋ ๋์ง๋ง, 5ํฌ๋ก๊ทธ๋จ 3๊ฐ์ 3ํฌ๋ก๊ทธ๋จ 1๊ฐ๋ฅผ ๋ฐฐ๋ฌํ๋ฉด, ๋ ์ ์ ๊ฐ์์ ๋ด์ง๋ฅผ ๋ฐฐ๋ฌํ ์ ์๋ค.
- ์๊ทผ์ด๊ฐ ์คํ์ ์ ํํ๊ฒ Nํฌ๋ก๊ทธ๋จ ๋ฐฐ๋ฌํด์ผ ํ ๋, ๋ด์ง ๋ช ๊ฐ๋ฅผ ๊ฐ์ ธ๊ฐ๋ฉด ๋๋์ง ๊ทธ ์๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
- ์ฒซ์งธ ์ค์ N์ด ์ฃผ์ด์ง๋ค. (3 ≤ N ≤ 5000)
- ์๊ทผ์ด๊ฐ ๋ฐฐ๋ฌํ๋ ๋ด์ง์ ์ต์ ๊ฐ์๋ฅผ ์ถ๋ ฅํ๋ค. ๋ง์ฝ, ์ ํํ๊ฒ Nํฌ๋ก๊ทธ๋จ์ ๋ง๋ค ์ ์๋ค๋ฉด -1์ ์ถ๋ ฅํ๋ค.
์์ด๋์ด
- ์ ์ผ ์ ๊ฒ ๋ค๊ณ ๊ฐ๋ ค๋ฉด 5kg ๋ด์ง๋ฅผ ๋ง์ด ์ฐ๋๊ฒ ์ค์ํ๋ฏ๋ก While๋ฌธ์์ 5๋ก ๋๋์ด ๋จ์ด์ง๋ค๋ฉด ๊ฒฐ๊ณผ๊ฐ์ 5๋ก ๋๋ ๋ชซ์ ๋ํ๊ณ ์ข ๋ฃํ๋ค.
- ๋ง์ฝ 5๋ก ๋๋์ด ๋จ์ด์ง์ง ์๋๋ค๋ฉด 3kg ๋ด์ง๋ฅผ ์จ์ผ๋๋ฏ๋ก ์คํ ์ด ๋ฌด๊ฒ์์ 3์ ๋นผ๊ณ ๊ฒฐ๊ณผ๊ฐ์ 1์ ๋ํ๋ค.
- ๊ทธ๋ ๊ฒ 3์ ๋นผ๊ณ ๋ค์ While๋ฌธ ์ฒ์์ผ๋ก ๋์๊ฐ์ 3์ผ๋ก ๋บ ๋๋จธ์ง๊ฐ 5๋ก ๋๋์ด ๋จ์ด์ง๋์ง ๊ณ์ฐํ๊ณ ์๋๋ฉด ๋ค์ 3์ ๋บ๋ค.
- ๊ณ์ํด์ ๋ฐ๋ณตํ๋ค๊ฐ ๋ง์ฝ ์คํ์ ์ด ๋ฌด๊ฒ๊ฐ ๋ง์ด๋์ค๊ฐ ๋๋ค๋ฉด 3kg ๋ด์ง์ 5kg ๋ด์ง๋ก ์คํ์ ์ ํํ๊ฒ ๋๋ ์ ์๋ค๋ ๋ป์ด๋ฏ๋ก ๊ฒฐ๊ณผ๊ฐ์ -1๋ก ์ ์ฅํ๊ณ While๋ฌธ์ ์ข ๋ฃํ๋ค.
๊ฒช์ ์ํ์ฐฉ์ค
- X
์ฝ๋
import java.io.*;
import java.util.*;
public class BOJ2839 {
public static void main(String[] args) throws Exception{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
// ๊ฒฐ๊ณผ๊ฐ ์ ์ฅ ๋ณ์
int result = 0;
while(true){
// ๋ง์ฝ ์คํ์ด 5๋ก ๋๋์ด ๋จ์ด์ง๋ค๋ฉด
if(N % 5 == 0){
// ๊ฒฐ๊ณผ๊ฐ์ ๊ธฐ์กด ๊ฒฐ๊ณผ๊ฐ + ์คํ์ 5๋ก ๋๋ ๋ชซ
result = result + N / 5;
// ๋ฐ๋ณต๋ฌธ ์ข
๋ฃ
break;
}
// ๋ง์ฝ ๋๋์ด ๋จ์ด์ง์ง ์๋๋ค๋ฉด
else{
// ์คํ์ 3ํค๋ก ๋นผ๊ณ
N = N - 3;
// 3ํค๋ก ๋ด์ง๋ฅผ ํ๋ ์ผ์ผ๋ฏ๋ก ๊ฒฐ๊ณผ๊ฐ + 1
result = result + 1;
}
// ๋ง์ฝ ์คํ์ ๋ฌด๊ฒ๊ฐ ๋ง์ด๋์ค๊ฐ ๋๋ค๋ฉด
// 5์ 3์ผ๋ก ์ ํํ๊ฒ ๋๋์ด์ง์ง ์๋๋ค๋ ๋ป์ด๋ฏ๋ก
if(N < 0){
// ๊ฒฐ๊ณผ๊ฐ์ -1๋ก ์ ์ฅํ๊ณ ๋ฐ๋ณต๋ฌธ ์ข
๋ฃ
result = -1;
break;
}
}
System.out.println(result);
}
}
'์๊ณ ๋ฆฌ์ฆ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Java] BOJ 9012 ๊ดํธ (2) | 2024.07.19 |
---|---|
[Java] BOJ 4949 ๊ท ํ์กํ ์ธ์ (2) | 2024.07.19 |
[Java] BOJ 2164 ์นด๋2 (0) | 2024.07.18 |
[Java] BOJ 1920 ์ ์ฐพ๊ธฐ (0) | 2024.07.17 |
[Java] BOJ 1018 ์ฒด์คํ ๋ค์ ์น ํ๊ธฐ (0) | 2024.07.17 |