[๋ฌธ์ ๋งํฌ] ๐ https://www.acmicpc.net/problem/1267
์ค๋ช
์์ ์๊ธ์ ๋ 30์ด๋ง๋ค 10์์ฉ ์ฒญ๊ตฌ๋๋ค. ์ด ๋ง์ ๋ง์ฝ 29์ด ๋๋ ๊ทธ ๋ณด๋ค ์ ์ ์๊ฐ ํตํ๋ฅผ ํ์ผ๋ฉด 10์์ด ์ฒญ๊ตฌ๋๋ค. ๋ง์ฝ 30์ด๋ถํฐ 59์ด ์ฌ์ด๋ก ํตํ๋ฅผ ํ์ผ๋ฉด 20์์ด ์ฒญ๊ตฌ๋๋ค.
๋ฏผ์ ์๊ธ์ ๋ 60์ด๋ง๋ค 15์์ฉ ์ฒญ๊ตฌ๋๋ค. ์ด ๋ง์ ๋ง์ฝ 59์ด ๋๋ ๊ทธ ๋ณด๋ค ์ ์ ์๊ฐ ํตํ๋ฅผ ํ์ผ๋ฉด 15์์ด ์ฒญ๊ตฌ๋๋ค. ๋ง์ฝ 60์ด๋ถํฐ 119์ด ์ฌ์ด๋ก ํตํ๋ฅผ ํ์ผ๋ฉด 30์์ด ์ฒญ๊ตฌ๋๋ค.
ํตํ ์๊ฐ ๋ชฉ๋ก์ด ์ฃผ์ด์ง๋ฉด ์ด๋ ์๊ธ์ ๋ฅผ ์ฌ์ฉ ํ๋ ๊ฒ์ด ์ ๋ ดํ์ง ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
ํ์ด
๊ฐ ์๊ฐ๋ง๋ค 30๊ณผ 60์ผ๋ก ๋๋๊ณ , ๊ทธ ๋ชซ์ + 1์ ํด์ค๋ค.
- ( ๊ฐ ์๊ฐ / 30 ) + 1
- ( ๊ฐ ์๊ฐ / 60 ) + 1
+ 1์ ํด์ฃผ๋ ์ด์ ๋ ํตํํ ์๊ฐ์ด 30์ด, 60์ด ์ดํ์ธ ๊ฒฝ์ฐ๋ ์๊ธ์ ๋ถ๊ณผํด์ผ ํ๋๋ฐ, ๋ชซ์ด 0์ด๋ฉด ์๊ธ ๋ถ๊ณผ๋ฅผ ๋ชปํ๊ธฐ ๋๋ฌธ์ด๋ค. ๋ํ ๋๋จธ์ง๊ฐ ์๊ฒผ์ ๋๋ ๊ทธ ๋๋จธ์ง๊ฐ ์๊ธ์ ๋ถ๊ณผํด์ผ ํ๋ ๋ฒ์์ ์ํ๊ธฐ ๋๋ฌธ์ + 1์ ํด์ผ ํ๋ค.
์์์ ๊ณ์ฐํ ๊ฐ์ ๊ฐ์ 10๊ณผ 15์ ๊ณฑํ๋ค.
- ( ( ๊ฐ ์๊ฐ / 30 ) + 1 ) * 10
- ( ( ๊ฐ ์๊ฐ / 60 ) + 1 ) * 15
Solution
import java.io.*;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
int time, y = 0, m = 0;
StringTokenizer st = new StringTokenizer(br.readLine());
for (int i = 0; i < n; i++) {
time = Integer.parseInt(st.nextToken());
y += ((time / 30) + 1) * 10;
m += ((time / 60) + 1) * 15;
}
if (y > m) { //์์ ์๊ธ์ ๊ฐ ๋ ๋น์ธ๋ฉด
System.out.println("M " + m);
} else if (y < m) { //๋ง์ ์๊ธ์ ๊ฐ ๋ ๋น์ธ๋ฉด
System.out.println("Y " + y);
} else {
System.out.println("Y M " + y);
}
}
}
๐ฉ๐ป ํ๊ณ
๋งํ ํ์ด
for (int i : time) {
//์์ ์๊ธ์
if (i >= 30) { //ํตํํ ์๊ฐ์ด 30์ด ์ด์์ด๋ฉด
y += (i / 30) * 10; //์๊ธ์ ๋ํ๊ธฐ
if (i % 30 != 0) { //๋๋จธ์ง๊ฐ ์์ผ๋ฉด
y += 10; //์๊ธ์ 10์ ์ถ๊ฐ
}
} else {
y += 10; //30์ด ์ดํ์ด๋ฉด 10์๋ง ๋ํจ
}
//๋ง์ ์๊ธ์
if (i >= 60) { //ํตํํ ์๊ฐ์ด 60์ด ์ด์์ด๋ฉด
m += (i / 60) * 15; //์๊ธ์ ๋ํ๊ธฐ
if (i % 60 != 0) { //๋๋จธ์ง๊ฐ ์์ผ๋ฉด
m += 15; //์๊ธ์ 15์ ์ถ๊ฐ
}
} else {
m += 15; //60์ด ์ดํ์ด๋ฉด 15์๋ง ๋ํจ
}
}
๋ฐ๋ก
2
60 65
๋ค๋ฅธ ์์ ๋ ๋ค ๋งํ์ง๋ง ๋ฐ๋ก๊ฐ ์์๋ค... ์กฐ๊ฑด์ ๋ ์ถ๊ฐํ์ด์ผ ํ๋ค. ๊ทธ๋ ๊ฒ ๋๋ฉด ๋ด ์ฝ๋๋ ๋๋ฌ์์ง๊ฒ ์ง... ๊ทธ๋์ ๋ค๋ฅธ ํ์ด ๋ดค๋ค. ์กฐ๊ธ ๋ ๋ถ๋ฐํ์.
'๐งฉ Algorithm > [BOJ] Bronze' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| BOJ 1598 : ๊ผฌ๋ฆฌ๋ฅผ ๋ฌด๋ ์ซ์ ๋์ด (Java/์ํ/Bronze 3) (0) | 2024.10.12 |
|---|---|
| BOJ 1284 : ์ง ์ฃผ์ (Java/๊ตฌํ/Bronze 3) (0) | 2024.10.12 |
| BOJ 9295 : ์ฃผ์ฌ์ (Java/๊ตฌํ/Bronze 4) (0) | 2024.10.10 |
| BOJ 5596 : ์ํ๋ฌธ์ (Java/๊ตฌํ/Bronze 4) (0) | 2024.10.10 |
| BOJ 5532 : ๋ฐฉํ ์์ (Java/๊ตฌํ/Bronze 4) (0) | 2024.10.10 |