-
[๋ฐฑ์ค/JAVA] 18312๋ฒ : ์๊ฐAlgorithm/Java 2024. 10. 26. 13:52๋ฐ์ํ
https://www.acmicpc.net/problem/18312
๐ ๋ฌธ์ ์์ฝ
์ ์ N๊ณผ K๊ฐ ์ฃผ์ด์ก์ ๋, 00์ 00๋ถ 00์ด๋ถํฐ N์ 59๋ถ 59์ด๊น์ง์ ๋ชจ๋ ์๊ฐ ์ค K๊ฐ ํ๋๋ผ๋ ํฌํจ๋๋ ๋ชจ๋ ์๊ฐ์ ์๋ฅผ ์ธ๋ ๋ฌธ์ ์ ๋๋ค. ์๊ฐ์ ๋์งํธ ์๊ณ ํ์์ผ๋ก ์ด ๋จ์๋ก ๊ตฌ๋ถํฉ๋๋ค.
[ ์ค๋ต ๋ ธํธ ]
โ ๊ธฐ์กด ์ค๋ต ์ฝ๋import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); int N = Integer.parseInt(st.nextToken()); // 5 String K = st.nextToken(); // 3 // 5์ 59๋ถ 59์ด๊น์ง์ ๋ชจ๋ ์๊ฐ ์ค 3์ด ํ๋๋ผ๋ ํฌํจ๋๋ ๋ชจ๋ ์๊ฐ ์ธ๊ธฐ // [00, 00, 00] ํํ๋ก // 00 01 02 03 04 05 06 07 08 09 10 // 11 12 13 14 15 16 17 18 19 20 int count = 0; for(int h = 0; h <= N; h++) { // ์ for(int m = 0; m <= 59; m++) { // ๋ถ for(int s = 0; s <= 59; s++) { // ์ด if(String.valueOf(s).contains(K) || String.valueOf(m).contains(K) || String.valueOf(h).contains(K)) { count++; } } } } System.out.println(count); } }
๐ ๊ธฐ์กด ์ฝ๋์ ๋ฌธ์ ์ 1. ํฌ๋งท์ ์ผ๊ด์ฑ ๋ฌธ์ :
- ๊ธฐ์กด ์ฝ๋์์๋ ์, ๋ถ, ์ด๋ฅผ ๊ฐ๋ณ์ ์ผ๋ก String.valueOf()๋ก ๋ณํํด contains(K)๋ก ํ์ธํ์ต๋๋ค.
- ์ด ๋ฐฉ์์ ๋๋ถ๋ถ ์ฌ๋ฐ๋ฅด๊ฒ ๋์ํ์ง๋ง, ํน์ ์ผ์ด์ค์์ ์, ๋ถ, ์ด๊ฐ ๋ฐ๋ก ๋ถ๋ฆฌ๋์ด ์ฒดํฌ๋๊ธฐ ๋๋ฌธ์ ๋์งํธ ์๊ณ ํ์(HHMMSS)๊ณผ ์ผ๊ด์ฑ์ด ๋ง์ง ์์ ์ค์๋ํ ๊ฐ๋ฅ์ฑ์ด ์์ต๋๋ค.
[ ์ ๋ต ์ฝ๋ & ์ฌ๋ฐ๋ฅธ ํ์ด ]
๐ ์ฌ๋ฐ๋ฅธ ํ์ด1. ํฌ๋งท์ ์ผ๊ด์ฑ ๋ฌธ์ ํด๊ฒฐ
- ๋ฌธ์ ์๊ตฌ์ฌํญ์ HHMMSS ํ์์ ๋์งํธ ์๊ณ ์ ์ฒด์์ K๊ฐ ํฌํจ๋๋์ง๋ฅผ ํ์ธํ๋ ๊ฒ์ ๋๋ค. String.format("%02d%02d%02d", hour, minute, second)์ ์ฌ์ฉํด ์, ๋ถ, ์ด๋ฅผ HHMMSS ํ์์ผ๋ก ํต์ผํ ํ indexOf๋ก K๋ฅผ ๊ฒ์ํ์ต๋๋ค.
- ์ด๋ฅผ ํตํด ํ๋์ ํตํฉ๋ ๋ฌธ์์ด์์ ํ ๋ฒ์ K๋ฅผ ํ์ํ๋ฉฐ ์ผ๊ด์ฑ์ ์ ์งํ ์ ์์์ต๋๋ค.
๐ ์ ๋ต ์ฝ๋import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); int N = Integer.parseInt(st.nextToken()); // 5 String K = st.nextToken(); // 3 // 5์ 59๋ถ 59์ด๊น์ง์ ๋ชจ๋ ์๊ฐ ์ค 3์ด ํ๋๋ผ๋ ํฌํจ๋๋ ๋ชจ๋ ์๊ฐ ์ธ๊ธฐ // [00, 00, 00] ํํ๋ก // 00 01 02 03 04 05 06 07 08 09 10 // 11 12 13 14 15 16 17 18 19 20 int count = 0; for(int h = 0; h <= N; h++) { // ์ for(int m = 0; m <= 59; m++) { // ๋ถ for(int s = 0; s <= 59; s++) { // ์ด // ํ์ฌ ์๊ฐ์ HHMMSS ํ์์ผ๋ก ํฌ๋งท String time = String.format("%02d%02d%02d", h, m, s); if(time.contains(K)) { count++; } } } } System.out.println(count); } }
๋ฐ์ํ'Algorithm > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค/JAVA] 2231๋ฒ : ๋ถํดํฉ (0) 2024.10.28 [๋ฐฑ์ค/JAVA] 22864๋ฒ : ํผ๋ก๋ (0) 2024.10.26 [๋ฐฑ์ค/JAVA] 11286๋ฒ : ์ ๋๊ฐ ํ (0) 2024.10.26 [๋ฐฑ์ค/JAVA] 2075๋ฒ : N๋ฒ์งธ ํฐ ์ (0) 2024.10.22 [๋ฐฑ์ค/JAVA] 4358๋ฒ : ์ํํ (0) 2024.10.22