#include <iostream>
#include <vector>
#include <string.h>
using namespace std;
string poliomino[501];
void polifunc()
{
poliomino[0] = ".";
poliomino[1] = "-1";
poliomino[2] = "BB";
poliomino[3] = "-1";
poliomino[4] = "AAAA";
for (int i = 5; i <= 500; i++)
{
if (poliomino[i - 2] != "-1")
{
if (poliomino[i - 4] != "-1")
{
string tmp = poliomino[i - 4] + "AAAA";
string tmp2 = poliomino[i - 2] + "BB";
if (tmp > tmp2)
{
poliomino[i] = tmp2;
}
else
{
poliomino[i] = tmp;
}
}
else
{
poliomino[i] = poliomino[i - 2] + "BB";
}
}
else
poliomino[i] = "-1";
}
}
int main()
{
string poli;
cin >> poli;
polifunc();
string result;
int count = 0;
for (int i = 0; i < poli.length(); i++)
{
if (poli[i] == '.' && count != 0)
{
if (poliomino[count] == "-1")
{
cout << -1;
return 0;
}
result += (poliomino[count]);
count = 0;
}
if (poli[i] == '.' && count == 0)
result += (poliomino[0]);
else
count++;
}
if (count)
{
if (poliomino[count] == "-1")
{
cout << -1;
return 0;
}
result += (poliomino[count]);
}
for (int i = 0; i < result.length(); i++)
cout << result[i];
}
๋งํ์ ์์ธ ์ฐพ๋๊ฒ ์กฐ๊ธ ๋นก์ ์ง๋ง ๊ทธ๋๋ ์ด๋ฐ์ ์์ด๋์ด ๋ ์ฌ๋ฆฌ๊ธฐ๋ ์ฌ์ ๋ค.
'๐ก๐ธ๐ธ๐ถ๐ฃ: ๐๐๐๐๐๐พ๐๐ฝ๐ > ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
BOJ11660 : ๊ตฌ๊ฐ ํฉ ๊ตฌํ๊ธฐ 5 (Silver 1) (0) | 2021.08.15 |
---|---|
BOJ2012 : ๋ฑ์๋งค๊ธฐ๊ธฐ (Silver 3) (0) | 2021.08.13 |
BOJ11170 : 0์ ๊ฐ์ (Silver 5) (0) | 2021.08.11 |
BOJ11068 : ํ๋ฌธ์ธ ์ (Silver 5) (0) | 2021.08.11 |
BOJ17127 : ๋ฒ๊ฝ์ด ์ ๋ณด์ฌ์ ํผ์ด๋ ์ด์ (Bronze 1) (0) | 2021.08.11 |