๐ŸŒžAlgorithm/๐Ÿ”ฅBaekjoon

[Baekjoon] 21030_Frequent Alphabet

๋ฟŒ์•ผ._. 2025. 5. 16. 11:00
๋ฌธ์ œ(์ถœ์ฒ˜: https://www.acmicpc.net/problem/21030)

< Frequent Alphabet >

 

๋ฌธ์ œ ํ’€์ด 

 

i๋ฒˆ์งธ ๋ฌธ์ž๊ฐ€ S์˜ i๋ฒˆ์งธ ๋˜๋Š” T์˜ i๋ฒˆ์งธ ๋ฌธ์ž๋กœ ๊ตฌ์„ฑ๋œ ์ƒˆ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ํ†ตํ•ด ์–ป์„ ์ˆ˜ ์žˆ๋Š” ์ตœ๋‹ค ์ ์ˆ˜๋ฅผ ๊ตฌํ•ด์•ผ ํ•œ๋‹ค.

 

1) ์žฌ๊ท€๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ์ƒˆ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ๊ตฌํ•ด ์ตœ๋‹ค ์ ์ˆ˜๋ฅผ ๊ตฌํ–ˆ๋‹ค -> ์‹œ๊ฐ„ ์ดˆ๊ณผ

2) ๋ฌธ์ž์—ด์„ ์ด์ค‘ํƒ์ƒ‰ํ•˜๋ฉฐ ํ˜„์žฌ ์œ„์น˜์—์„œ ๊ฐ™์€ ๋ฌธ์ž๋ฅผ ์ฐพ์•„ ์ตœ๋‹ค ์ ์ˆ˜๋ฅผ ๊ตฌํ–ˆ๋‹ค -> ์‹œ๊ฐ„ ์ดˆ๊ณผ

3) ๋ฌธ์ž์—ด์„ ํƒ์ƒ‰ํ•˜๋ฉฐ HashMap์— ๋ฌธ์ž์˜ ๋“ฑ์žฅ ํšŸ์ˆ˜๋ฅผ ๊ตฌํ–ˆ๋‹ค. -> ํ†ต๊ณผ

 

my solution (Java)

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashMap;

public class _21030_ { // Frequent Alphabet

	public static void main(String[] args) throws IOException {
		BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));

		int N = Integer.parseInt(bf.readLine());

		String S = bf.readLine();
		String T = bf.readLine();

		int result = 0;

		HashMap<Character, Integer> map = new HashMap<>();
		for (int i = 0; i < N; i++) {
			if (S.charAt(i) == T.charAt(i)) {
				if (map.containsKey(S.charAt(i))) {
					map.replace(S.charAt(i), map.get(S.charAt(i)) + 1);
				} else {
					map.put(S.charAt(i), 1);
				}
			} else {
				if (map.containsKey(S.charAt(i))) {
					map.replace(S.charAt(i), map.get(S.charAt(i)) + 1);
				} else {
					map.put(S.charAt(i), 1);
				}

				if (map.containsKey(T.charAt(i))) {
					map.replace(T.charAt(i), map.get(T.charAt(i)) + 1);
				} else {
					map.put(T.charAt(i), 1);
				}
			}
			result = Math.max(result, map.get(S.charAt(i)));
			result = Math.max(result, map.get(T.charAt(i)));
		}
		System.out.println(result);
	}
}
๋ณ€์ˆ˜)
N : ๋น„๋ฐ€๋ฒˆํ˜ธ ๊ธธ์ด
S, T : ๋ฌธ์ž์—ด
result : ์ตœ๋‹ค ์ ์ˆ˜
map : HashMap <Character, Integer> 

 

๋น„๋ฐ€๋ฒˆํ˜ธ ๊ธธ์ด N๊ณผ ๋ฌธ์ž์—ด S, T๋ฅผ ์ž…๋ ฅ๋ฐ›๋Š”๋‹ค. ๋ฌธ์ž์—ด์„ ์ „์ฒด ํƒ์ƒ‰ํ•˜๋ฉฐ HashMap์— ๋ฌธ์ž ๋“ฑ์žฅ ํšŸ์ˆ˜๋ฅผ ๊ตฌํ•œ๋‹ค. ์ด๋•Œ, ๊ฐ™์€ ์œ„์น˜์— ๊ฐ™์€ ๋ฌธ์ž์—ด์ด๋ผ๋ฉด 1๋งŒ ์ถ”๊ฐ€ํ•˜๊ณ , ๊ฐ๊ฐ ๋‹ค๋ฅธ ๋ฌธ์ž์—ด์ด๋ผ๋ฉด ๊ฐ๊ฐ HashMap์— ์ €์žฅํ•œ๋‹ค. result๋ฅผ map์˜ value๊ฐ’ ์ค‘ ์ตœ๋Œ“๊ฐ’์œผ๋กœ ์—…๋ฐ์ดํŠธํ•œ๋‹ค. ์ตœ์ข… result๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.