๐Ÿ‘ฉ๐Ÿป‍๐ŸŒพ

[PCCP ๋ชจ์˜๊ณ ์‚ฌ #1] 1๋ฒˆ - ์™ธํ†จ์ด ์•ŒํŒŒ๋ฒณ ๋ณธ๋ฌธ

์ฝ”๋”ฉํ…Œ์ŠคํŠธ/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

[PCCP ๋ชจ์˜๊ณ ์‚ฌ #1] 1๋ฒˆ - ์™ธํ†จ์ด ์•ŒํŒŒ๋ฒณ

์ฅฌ์Šค์ด 2023. 11. 5. 17:21
728x90

๋ฌธ์ œ ๋ณด๋Ÿฌ๊ฐ€๊ธฐ๐Ÿ‘†๐Ÿป

์ฝ”๋“œ๐ŸŒฑ

import java.util.*;

class Solution {
	public String solution(String input_string) {
		String answer = "";
		char cur = ' ';	 // ํ˜„์žฌ ๋น„๊ต ๋Œ€์ƒ์ธ ๋ฌธ์ž 
		Set<Character> flag = new HashSet<>();      // ์ด๋ฏธ ๋‚˜์™”๋˜ ์•ŒํŒŒ๋ฒณ์ธ์ง€ ํ™•์ธ์šฉ 
		Set<Character> lonely = new TreeSet<>();    // ์™ธํ†จ์ด ์•ŒํŒŒ๋ฒณ ์ €์žฅ์šฉ
		
        char[] input = input_string.toCharArray();

		for (char c : input) {
			if (c != cur) {
				if (flag.contains(c))
					lonely.add(c);
				flag.add(c);
				cur = c;
			}
		}

		for (char c : lonely)
			answer += c;

		if (answer == "")
			answer = "N";

		return answer;
	}
}

์ฒ˜์Œ์—๋Š” ์™ธํ†จ์ด ์•ŒํŒŒ๋ฒณ์ด ์ค‘๋ณต์œผ๋กœ ๋“ค์–ด๊ฐ€์ง€ ์•Š๊ฒŒ lonely๋ฅผ HashSet์œผ๋กœ ์„ ์–ธํ–ˆ๋‹ค. ๊ทผ๋ฐ ๋ฌธ์ œ์—์„œ ์™ธํ†จ์ด ์•ŒํŒŒ๋ฒณ๋“ค์„ ์•ŒํŒŒ๋ฒณ์ˆœ์œผ๋กœ ์ด์–ด๋ถ™์ธ ๋ฌธ์ž์—ด์„ returnํ•˜๋ผ๊ณ  ํ•ด์„œ ์–ด๋–ป๊ฒŒ ์ •๋ ฌ์„ ์‹œํ‚ฌ๊นŒ ํ•˜๋‹ค๊ฐ€ TreeSet์„ ์‚ฌ์šฉํ•˜๋ฉด ์ค‘๋ณต๋„ ์ œ๊ฑฐ๋˜๊ณ , ์ž๋™์ •๋ ฌ์ด ๋œ๋‹ค๊ณ  ํ•˜๊ธฐ์— TreeSet์„ ์‚ฌ์šฉํ–ˆ๋‹ค.

 

TreeSet์„ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค๋Š” ๊ฒƒ์„ ๋ชฐ๋ž๋‹ค๋Š” ๊ฒƒ ๋นผ๊ณ ๋Š” ๊ดœ์ฐฎ์•˜๋˜ ๋ฌธ์ œ ๊ฐ™๋‹ค!

728x90
Comments