๐ŸŒžAlgorithm/๐Ÿ”ฅBaekjoon

[Baekjoon] 14210_Kartomat

๋ฟŒ์•ผ._. 2025. 7. 14. 19:48
๋ฌธ์ œ(์ถœ์ฒ˜: https://www.acmicpc.net/problem/14210)

< Kartomat >

 

๋ฌธ์ œ ํ’€์ด 

 

์ž…๋ ฅ๋ฐ›์€ ๋ฌธ์ž๋กœ ์‹œ์ž‘ํ•˜๋Š” ๋‹จ์–ด๋ฅผ ์ฐพ์•„ ๊ทธ ๋‹จ์–ด์˜ ๋‹ค์Œ ๋ฌธ์ž๋“ค๋งŒ ์žํŒ์— ํ‘œ์‹œํ•œ๋‹ค.

4
ZAGREB
SISAK
ZADAR
ZABOK
ZA

์œ„์™€ ๊ฐ™์ด ์ž…๋ ฅ๋ฐ›์•˜๋‹ค๋ฉด ZA๋กœ ์‹œ์ž‘ํ•˜๋Š” ๋‹จ์–ด๋Š” ZAGREB, ZADAR, ZABOK์ด๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ ZA ๋‹ค์Œ์œผ๋กœ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋Š” ๊ธ€์ž๋Š” G, D, B์ด๋‹ค.

 

my solution (Java)

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.ArrayList;

public class _14210_ { // Kartomat

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

		char arr[][] = { { '*', '*', '*', 'A', 'B', 'C', 'D', 'E' }, { 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M' },
				{ 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U' }, { 'V', 'W', 'X', 'Y', 'Z', '*', '*', '*' } };

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

		String letters[] = new String[N];
		for (int i = 0; i < N; i++) {
			letters[i] = bf.readLine();
		}

		String letter = bf.readLine();

		ArrayList<Character> list = new ArrayList<>();
		for (int i = 0; i < N; i++) {
			if (letters[i].startsWith(letter)) {
				list.add(letters[i].charAt(letter.length()));
			}
		}

		for (int i = 0; i < 4; i++) {
			for (int j = 0; j < 8; j++) {
				if (list.contains(arr[i][j])) {
					bw.write(arr[i][j]);
				} else {
					bw.write("*");
				}
			}
			bw.write("\n");
		}
		bw.flush();
	}
}
๋ณ€์ˆ˜)
arr : ํ‚ค๋ณด๋“œ ๋ฐฐ์—ด
N : ์ž…๋ ฅ ๊ฐœ์ˆ˜
letters : ์ž…๋ ฅ๋ฐ›์€ ๋‹จ์–ด
letter : ์ž…๋ ฅ๋ฐ›์€ ์ฒ˜์Œ ๋ช‡ ๊ธ€์ž
list : ํ™œ์„ฑํ™”๋˜๋Š” ๊ธ€์ž

 

๋จผ์ € ๋ฐฐ์—ด arr์— ํ‚ค๋ณด๋“œ ๋ฐฐ์—ด์— ๋งž๊ฒŒ ์ €์žฅํ•˜์—ฌ ์ดˆ๊ธฐํ™”ํ•œ๋‹ค. ์ž…๋ ฅ ๊ฐœ์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›๋Š”๋‹ค. ์ž…๋ ฅ ๊ฐœ์ˆ˜๋งŒํผ ๋‹จ์–ด๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ letters ๋ฐฐ์—ด์— ์ €์žฅํ•œ๋‹ค. ์ฒ˜์Œ ๋ช‡ ๊ธ€์ž๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ letters ๋ฐฐ์—ด์— ์ฒ˜์Œ ๋ช‡ ๊ธ€์ž๋กœ ์‹œ์ž‘ํ•˜๋Š” ๋‹จ์–ด์˜ ๊ทธ๋‹ค์Œ ๊ธ€์ž๋ฅผ ArrayList์— ์ €์žฅํ•œ๋‹ค. ์ตœ์ข… ArrayList์— ์žˆ๋Š” ๊ธ€์ž๋งŒ ํ™œ์„ฑํ™”ํ•˜๊ณ  ๋‚˜๋จธ์ง€๋Š” *๋กœ ์ถœ๋ ฅํ•œ๋‹ค.



 

'๐ŸŒžAlgorithm > ๐Ÿ”ฅBaekjoon' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Baekjoon] 8594_Program  (0) 2025.07.16
[Baekjoon] 9523_Arithmetic with Morse  (1) 2025.07.15
[Baekjoon] 27060_Vertical Histogram  (2) 2025.07.11
[Baekjoon] 32076_Easy as ABC  (2) 2025.07.10
[Baekjoon] 3518_๊ณต๋ฐฑ์™• ๋นˆ-์นธ  (1) 2025.07.09