# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
315240 | Seanliu | Costinland (info1cup19_costinland) | C++14 | 1 ms | 460 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <iostream>
#define int long long int
using namespace std;
int D;
char mp[256][256];
inline void solve(int D){
int cnt = 1;
for(int i = 0; i < 512; i++) for(int j = 0; j < 512; j++) mp[i][j] = '.';
mp[0][0] = 'd';
D--;
if(D & 1){
mp[0][0] = 'X';
D--;
}
for(int i = 1; i < 63; i++){
if((D >> i) & 1){
mp[cnt][0] = 'X';
for(int j = 0; j < i; j++){
for(int k = 0; k < i; k++){
mp[cnt + j][cnt + k] = (j + k < i ? 'X' : '.');
}
}
cnt += i;
}
}
cnt++;
for(int i = 0; i < cnt - 1; i++){
mp[cnt - 1][i] = 'r';
mp[i][cnt - 1] = 'd';
}
cout << cnt << " " << cnt << endl;
for(int i = 0; i < cnt; i++){
for(int j = 0; j < cnt; j++){
cout << mp[i][j];
}
cout << endl;
}
}
signed main(){
cin >> D;
if(D == 3){
cout << "3 3\nrXd\n.Xd\nrr.\n";
} else if(D == 4){
cout << "3 3\nXXd\nX.d\nrr.\n";
} else if(D == 5){
cout << "5 5\nXXXXd\n....d\n....d\n....d\nrrrr.\n";
} else if(D == 6){
cout << "5 5\nXXXXd\nX...d\n....d\n....d\nrrrr.\n";
} else if(D == 7){
cout << "5 5\nXXXXd\nX...d\nX...d\n....d\nrrrr.\n";
} else if(D == 8){
cout << "5 5\nXXXXd\nX...d\nX...d\nX...d\nrrrr.\n";
} else if(D == 9){
cout << "5 5\nXXX.d\n.XX..d\nX...d\nX...d\nrrrr.\n";
} else if(D == 10){
cout << "5 5\nXXX.d\nXXX.d\n....d\n....d\nrrrr.\n";
} else if(D == 11){
cout << "5 5\nXXX.d\nXXX.d\nX...d\n....d\nrrrr.\n";
} else if(D == 12){
cout << "5 5\nXXX.d\nXXX.d\nX...d\nX...d\nrrrr.\n";
} else if(D == 13){
cout << "5 5\nXXXXd\n.XXXd\n..X.d\n....d\nrrrr.\n";
} else if(D == 14){
cout << "5 5\nXXXXd\n.XXXd\n...Xd\n....d\nrrrr.\n";
} else if(D == 15){
cout << "5 5\nXXXXd\n.XXXd\n...Xd\nX...d\nrrrr.\n";
} else if(D == 16){
cout << "5 5\nXXXXd\n.XXXd\n.X.Xd\n....d\nrrrr.\n";
} else if(D == 17){
cout << "5 5\nXXXXd\n.XXXd\n.X.Xd\nX...d\nrrrr.\n";
} else if(D == 18){
cout << "5 5\nX.X.d\nXXX.d\nXXX.d\n..X.d\nrrrr.\n";
} else if(D == 19){
cout << "5 5\nX.XXd\nXXX.d\nXXX.d\n..X.d\nrrrr.\n";
} else {
solve(D);
}
}
컴파일 시 표준 에러 (stderr) 메시지
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |