์ตœ๋Œ€ 1 ๋ถ„ ์†Œ์š”

๐Ÿ“ [S4_1302] ๋ฒ ์ŠคํŠธ์…€๋Ÿฌ

import java.util.*;
import java.io.*;

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

		// **** input start ****

		int N = Integer.parseInt(br.readLine());
		int max = 0;
		String res = "";
		HashMap<String, Integer> map = new HashMap<>();

		for (int i = 0; i < N; i++) {
			String str = br.readLine();
			// ๋งŒ์•ฝ ํฌํ•จํ•˜๊ณ  ์žˆ๋‹ค๋ฉด
			if(map.containsKey(str)) {
				map.put(str, map.get(str)+1);
			}else {
				map.put(str, 1);
			}
		}

		// **** input end ****

		// map์„ ๋Œ๋ฉด์„œ value๊ฐ€ ์ตœ๋Œ€๊ฐ’์„ ์ฐพ์Œ
		for(String key : map.keySet()) {
			int cnt = map.get(key);

			// ๋งŒ์•ฝ ์ด๋ฏธ ์ตœ๋Œ€๊ฐ’๊ณผ ๊ฐ’์ด ๊ฐ™๋‹ค๋ฉด ์‚ฌ์ „์ˆœ์œผ๋กœ ์•ž์„œ๋Š”๊ฑฐ ๋น„๊ต
			if(max == cnt && res.compareTo(key)>0) {
				res = key;
				max = cnt;
			}else if(max < cnt){
				res = key;
				max = cnt;
			}
		}
		System.out.println(res);
	} // main end
} // class end

๐Ÿค” ๋‚˜์˜ ์ƒ๊ฐ

๋ณด์ž๋งˆ์ž HashMap์„ ์ด์šฉํ•ด์„œ String, Integer๋ฅผ ํ™œ์šฉํ•ด์•ผ๊ฒ ๋‹ค ๋ผ๋Š” ์ƒ๊ฐ์„ ํ–ˆ๋‹ค.
์•ž์—๋Š” ๋ฌธ์ž์—ด ๋’ค์—๋Š” ๊ทธ ๋ฌธ์ž์—ด์ด ๋‚˜ํƒ€๋‚œ ํšŸ์ˆ˜๋ฅผ ์ €์žฅํ•˜๋Š” ๊ฒƒ์ด๋‹ค.
๋ฌธ์ œ๊ฐ€ ์ตœ๋Œ€๊ฐ’์ด ๊ฐ™๋‹ค๋ฉด ์‚ฌ์ „์ˆœ์œผ๋กœ ์•ž์„œ๋Š” ๊ฒƒ์„ ๊ตฌํ•˜๋Š” ๊ฒƒ์ธ๋ฐ ์ด๊ฒƒ์€ String์˜ ๊ธธ์ด๋ฅผ ๋น„๊ตํ•ด์ฃผ๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ compareTo()๋ฅผ ํ™œ์šฉํ•ด์„œ ํฌ๋‹ค๋ฉด ๊ธฐ์กด ๊ฐ’์ด ๋” ํฐ ๊ฒƒ์ด๊ณ  ์ž‘๋‹ค๋ฉด ๋’ค์— ๊ฐ’์ด ๋” ํฐ ๊ฒƒ์ด๋ผ์„œ ๊ฐ’๋“ค์„ ๋ฐ”๊ฟ”์ฃผ์—ˆ๋‹ค.

ํƒœ๊ทธ: , , ,

์นดํ…Œ๊ณ ๋ฆฌ:

์—…๋ฐ์ดํŠธ: