https://www.acmicpc.net/problem/14425
14425๋ฒ: ๋ฌธ์์ด ์งํฉ
์ฒซ์งธ ์ค์ ๋ฌธ์์ด์ ๊ฐ์ N๊ณผ M (1 ≤ N ≤ 10,000, 1 ≤ M ≤ 10,000)์ด ์ฃผ์ด์ง๋ค. ๋ค์ N๊ฐ์ ์ค์๋ ์งํฉ S์ ํฌํจ๋์ด ์๋ ๋ฌธ์์ด๋ค์ด ์ฃผ์ด์ง๋ค. ๋ค์ M๊ฐ์ ์ค์๋ ๊ฒ์ฌํด์ผ ํ๋ ๋ฌธ์์ด๋ค์ด ์ฃผ์ด
www.acmicpc.net
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | 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()); int m = Integer.parseInt(st.nextToken()); Map<String, Integer> map = new HashMap<>(); for (int i = 0; i < n; i++) { map.put(br.readLine(), 0); } int count = 0; for (int i = 0; i < m; i++) { if (map.containsKey(br.readLine())) count++; } System.out.print(count); } } | cs |
์ด ๋ฌธ์ ๋ฅผ ํ๊ธฐ ์ํด ํด์ฌ๋งต์ ์์์ผ ํ๋ค. ํด์ฌ๋งต์ ๋ฐฐ์ด๊ณผ ๋ฆฌ์คํธ์ ๊ฐ์ด ์ผ๋ ฌ๋ก ํ์ํ๋ ๊ฐ์ด ์๋๋ผ ํค์ ๊ฐ์ ์ด์ฉํ์ฌ ์์ ์ ์ฅํด ๋๊ฐ๋ค.
๋จผ์ BufferReader์ StringTokenizer๋ฅผ ์ ์ธํด์ค๋ค. ๊ทธ ๋ค์ n๊ณผ m์ ์ ๋ ฅ ๋ฐ์์ฃผ๊ณ ํด์ฌ๋งต์ ์ ์ธํด์ค๋ค.
for๋ฌธ์ ๋๋ฉด์ n๋ฒ ๋งํผ ์ฌ์ฉ์์๊ฒ ๋ฌธ์์ด์ ์ ๋ ฅ ๋ฐ๋๋ค.(ํค๋ฅผ ํด์ฌ๋งต์ ๋ฃ์ด์ค๋ค. ๊ทธ๋ฆฌ๊ณ ๊ฐ์ ํ์ ์๊ธฐ์ 0์ผ๋ก ์ค์ ํด์ค๋ค)
๊ทธ๋ฆฌ๊ณ ์นด์ดํธ ๋ณ์๋ฅผ ์ด๊ธฐํํด์ค๋ค. ์ด ๊ฐ์ ์ฐ๋ฆฌ๋ ์ถ๋ ฅํ ๊ฒ์ด๋ค.
๋ค์ ๋ for๋ฌธ์ ๋๋ฉด์ ์ด๋ฒ์๋ m๋งํผ for ๋ฌธ์ ๋์์ค๋ค. for๋ฌธ์ ๋ด์ฉ์ ๋จผ์ br.readLine()์ ํตํด ์ฌ์ฉ์์๊ฒ
m๋งํผ์ ๋ฌธ์์ด ๊ฐ์ ๋ฐ๊ณ ๊ทธ ๊ฐ์ containsKey()์ ํ๋ผ๋ฏธํฐ๋ก ๋๊ฒจ์ค ๋ค์ map์ key๋ฅผ ํ์์ ํด์ ๋ง์ฝ ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ๋ฌธ์์ด์ด ์ด๋ฏธ map์ key์ ์๋ค๋ฉด count๋ฅผ ์ฆ๊ฐ์ํจ๋ค. ๊ทธ ๋ค์ count๋ฅผ ์ถ๋ ฅํด์ฃผ๋ฉด ๋์ด๋ค.
'Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฐฑ์ค 10773 ์ ๋ก Stack with Stack of Java (0) | 2024.01.27 |
---|---|
๋ฐฑ์ค 1934 ์ต์๊ณต๋ฐฐ์ With StringBuilder of Java (0) | 2024.01.26 |
๋ฐฑ์ค 13241 ์ต์ ๊ณต๋ฐฐ์ With JAVA (0) | 2024.01.20 |
๋ฐฑ์ค 11478 ์๋ก ๋ค๋ฅธ ๋ฌธ์์ด์ ๊ฐ์ With JAVA (2) | 2024.01.16 |
๋ฐฑ์ค 1269 ๋์นญ์ฐจ์งํฉ with JAVA (0) | 2024.01.15 |