Tags
- ๊ทธ๋ํ ์ด๋ก
- dfs
- PGM
- Study
- SpringBoot
- ๊ตฌํ
- ์๋ฎฌ๋ ์ด์
- BOJ
- greedy
- ์๋ฃ๊ตฌ์กฐ
- Python
- queue
- ๋๋น ์ฐ์ ํ์
- CodingTest
- LV2
- stack
- ์ ์๋ก
- BFS
- Dynamic Programming
- Java
- Brute Force Algorithm
- ์ ๋ ฌ
- DP
- ๊น์ด ์ฐ์ ํ์
- ๋ฌธ์์ด
- ๊ต์ฌ
- sort
- ์ํ
- ๊ทธ๋ํ ํ์
- ๋ฐฑํธ๋ํน
Archives
๊ธฐ๋ก๋ฐฉ
BOJ_1343 : ํด๋ฆฌ์ค๋ฏธ๋ ธ ๋ณธ๋ฌธ
๐ธ ๋ฌธ์ ๋ถ์ ๐ธ
- 'X'์ '.'์ผ๋ก ์ด๋ฃจ์ด์ง ๋ฌธ์์ด์ด ์ ๋ ฅ๋๋ค.
- 'X"๋ฅผ "AAAA"์ "BB"๋ก ๊ต์ฒดํด์ ์ถ๋ ฅํ๋ค. ๋ถ๊ฐ๋ฅํ๋ฉด -1์ ์ถ๋ ฅํ๋ค.
๐ธ ์ฝ๋ ๐ธ
import java.util.Scanner;
public class Main {
public static String AB(String temp){
String re = "";
int len = temp.length();
if (len % 2 != 0) {
System.out.println(-1);
System.exit(0);
}
for (int i = 0; i < len / 4; i++)
re += "AAAA";
for (int i = 0; i < (len % 4) / 2; i++)
re += "BB";
return re;
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.next();
String answer = "";
String temp = "";
for (String s : str.split("")){
if (s.compareTo(".") == 0){
answer += AB(temp);
answer += ".";
temp = "";
}
else {
temp += s;
}
}
answer += AB(temp);
System.out.println(answer.substring(0,answer.length()));
}
}
๐ธ ์ฝ๋ ํด์ ๐ธ
- ๋ฌธ์์ด์ ์
๋ ฅ๋ฐ์ ํ ๋ฌธ์์ฉ ๊ฒ์ฌํ๋ค.
- '.' ์ด๋ฉด ์ง๊ธ๊น์ง temp ์ ์ฅํ ๋ฌธ์์ด์ AB๋ก ๋ฐ๊ฟ์ answer์ ํฉ์น๋ค.
- "."์ answer์ ํฉ์น๋ค.
- temp๋ฅผ ์ด๊ธฐํํ๋ค.
- X๋ฅผ A์ B๋ก ๋ฐ๊ฟ์ฃผ๋ ๋ฉ์๋ AB()๋ฅผ ๋ฐ๋ก ์ ์ํ๋ค.
- ๋ฌธ์์ด์ ๊ธธ์ด๊ฐ ํ์๋ผ๋ฉด ๋ณํ ๋ถ๊ฐ๋ฅ ํ๋ฏ๋ก -1์ ์ถ๋ ฅํ๊ณ ํ๋ก๊ทธ๋จ์ ์ข ๋ฃํ๋ค.
- ๋ฌธ์์ด์ ๊ธธ์ด๋ฅผ 4๋ก๋๋ ๋ชซ ๋งํผ "AAAA"๋ฅผ ๋ฐํ ๋ฌธ์์ด์ ์๋๋ค.
- ๋ฌธ์์ด์ ๊ธธ์ด๋ฅผ 4๋ก๋๋ ๋๋จธ์ง๋ฅผ, ๋ค์ 2๋ก ๋๋ ๋ชซ ๋งํผ "BB"๋ฅผ ๋ฐํ ๋ฌธ์์ด์ ์๋๋ค.
- ์์ธ ๋ฌธ์์ด์ ๋ฐํํ๋ค.
๐ธ end ๐ธ
- ์กฐ๊ธ ๊ผฌ์ผ ์ ์์๋๋ฐ ์ ํ์ด๋ธ ๊ฒ ๊ฐ๋ค.
- '.'์ด ์๋ ๊ฒฝ์ฐ๋ ๋ณํํด์ฃผ๋๊ฑธ ๋์ณ์ ๋ค์ ์ฝ๋๋ฅผ๋ณด๊ณ AB๋ก ๋ณํํด์ฃผ๋ ๋ฉ์๋๋ฅผ ๋ถ๋ฆฌํ๋ค.
728x90
'CodingTest > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
BOJ_11669 : ๊ตฌ๊ฐ ํฉ ๊ตฌํ๊ธฐ 5 (0) | 2022.09.22 |
---|---|
BOJ_1380 : ๊ท๊ฑธ์ด (0) | 2022.09.22 |
BOJ_1340 : ์ฐ๋ ์งํ๋ฐ (0) | 2022.09.20 |
BOJ_1331 : ๋์ดํธ ํฌ์ด (0) | 2022.09.19 |
BOJ_1312 : ์์ (0) | 2022.09.18 |