ログインしてください。
提出 #31601511
ソースコード 拡げる
#include<bits/stdc++.h>
using namespace std;
#define N 305
typedef long long ll;
int n,L[N],R[N],U[N],D[N];
int dir[N][N]; // (0,1,2,3) -> (U,D,L,R)
const int d[4][2]={{-1,0},{1,0},{0,-1},{0,1}};
const char zz[4]={'U','D','L','R'};
bool vis[N][N],ins[N][N];
inline bool In(int x,int y){
return x>=1&&x<=n&&y>=1&&y<=n;
}
bool dfs(int x,int y){
if(vis[x][y])return false;
if(ins[x][y]){
ins[x][y]=0;
return true;
}
ins[x][y]=1;
int dx=d[dir[x][y]][0],dy=d[dir[x][y]][1];
int X=x+dx,Y=y+dy,d=dir[x][y];
while(In(X,Y)){
if(dfs(X,Y)){
dir[X][Y]=d;
if(ins[x][y]){
ins[x][y]=0;
return true;
}
else{
return dfs(x,y);
}
}
X+=dx,Y+=dy;
}
vis[x][y]=1;
cout<<zz[dir[x][y]]<<(dir[x][y]<2?y:x)<<'\n';
return false;
}
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
cin>>n;
for(int i=1;i<=n;++i)cin>>U[i];
for(int i=1;i<=n;++i)cin>>D[i];
for(int i=1;i<=n;++i)cin>>L[i];
for(int i=1;i<=n;++i)cin>>R[i];
static int rem[N];
for(int i=1;i<=n;++i){
rem[i]=n-U[i]-D[i];
if(rem[i]<0){
cout<<"NO\n";
return 0;
}
}
for(int i=1;i<=n;++i){
static int id[N];
for(int j=1;j<=n;++j){
id[j]=j;
}
sort(id+1,id+n+1,[&](int x,int y){return rem[x]>rem[y];});
if(L[i]+R[i]>n){
cout<<"NO\n";
return 0;
}
for(int j=1;j<=L[i]+R[i];++j){
if(rem[id[j]]){
--rem[id[j]];
dir[i][id[j]]=2;
}
else{
cout<<"NO\n";
return 0;
}
}
}
for(int i=1;i<=n;++i){
int idx=0;
for(int j=1;j<=n;++j){
if(dir[i][j]==2){
dir[i][j]+=idx>=L[i];
++idx;
}
}
}
for(int i=1;i<=n;++i){
int idx=0;
for(int j=1;j<=n;++j){
if(dir[j][i]==0){
dir[j][i]+=idx>=U[i];
++idx;
}
}
}
for(int i=1;i<=n;++i){
for(int j=1;j<=n;++j){
dfs(i,j);
}
}
return 0;
}
提出情報
| 提出日時 | |
|---|---|
| 問題 | J - Neue Spiel |
| ユーザ | Froggygua |
| 言語 | C++ (GCC 9.2.1) |
| 得点 | 2100 |
| コード長 | 1860 Byte |
| 結果 | AC |
| 実行時間 | 120 ms |
| メモリ | 4412 KiB |
ジャッジ結果
| セット名 | sample | dataset1 | dataset2 | ||||||
|---|---|---|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 2000 / 2000 | 100 / 100 | ||||||
| 結果 |
|
|
|
| セット名 | テストケース |
|---|---|
| sample | sample-01.txt, sample-02.txt |
| dataset1 | sample-01.txt, sample-02.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 01-21.txt, 01-22.txt, 01-23.txt, 01-24.txt, 01-25.txt, 01-26.txt, 01-27.txt, 01-28.txt, 01-29.txt, 01-30.txt, 01-31.txt, 01-32.txt, 01-33.txt, 01-34.txt, 01-35.txt, 01-36.txt, 01-37.txt, 01-38.txt, 01-39.txt, 01-40.txt, 01-41.txt, 01-42.txt, 01-43.txt, 01-44.txt, 01-45.txt, 01-46.txt |
| dataset2 | sample-01.txt, sample-02.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 01-21.txt, 01-22.txt, 01-23.txt, 01-24.txt, 01-25.txt, 01-26.txt, 01-27.txt, 01-28.txt, 01-29.txt, 01-30.txt, 01-31.txt, 01-32.txt, 01-33.txt, 01-34.txt, 01-35.txt, 01-36.txt, 01-37.txt, 01-38.txt, 01-39.txt, 01-40.txt, 01-41.txt, 01-42.txt, 01-43.txt, 01-44.txt, 01-45.txt, 01-46.txt, 02-01.txt, 02-02.txt, 02-03.txt, 02-04.txt, 02-05.txt, 02-06.txt, 02-07.txt, 02-08.txt, 02-09.txt, 02-10.txt, 02-11.txt, 02-12.txt, sample-01.txt, sample-02.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| 01-01.txt | AC | 8 ms | 3484 KiB |
| 01-02.txt | AC | 2 ms | 3448 KiB |
| 01-03.txt | AC | 2 ms | 3492 KiB |
| 01-04.txt | AC | 2 ms | 3580 KiB |
| 01-05.txt | AC | 2 ms | 3568 KiB |
| 01-06.txt | AC | 2 ms | 3616 KiB |
| 01-07.txt | AC | 2 ms | 3596 KiB |
| 01-08.txt | AC | 2 ms | 3532 KiB |
| 01-09.txt | AC | 2 ms | 3596 KiB |
| 01-10.txt | AC | 2 ms | 3612 KiB |
| 01-11.txt | AC | 2 ms | 3592 KiB |
| 01-12.txt | AC | 2 ms | 3716 KiB |
| 01-13.txt | AC | 5 ms | 3592 KiB |
| 01-14.txt | AC | 2 ms | 3576 KiB |
| 01-15.txt | AC | 2 ms | 3644 KiB |
| 01-16.txt | AC | 2 ms | 3704 KiB |
| 01-17.txt | AC | 4 ms | 3648 KiB |
| 01-18.txt | AC | 2 ms | 3572 KiB |
| 01-19.txt | AC | 2 ms | 3568 KiB |
| 01-20.txt | AC | 4 ms | 3652 KiB |
| 01-21.txt | AC | 2 ms | 3592 KiB |
| 01-22.txt | AC | 2 ms | 3504 KiB |
| 01-23.txt | AC | 2 ms | 3564 KiB |
| 01-24.txt | AC | 2 ms | 3668 KiB |
| 01-25.txt | AC | 2 ms | 3588 KiB |
| 01-26.txt | AC | 2 ms | 3524 KiB |
| 01-27.txt | AC | 3 ms | 3580 KiB |
| 01-28.txt | AC | 3 ms | 3568 KiB |
| 01-29.txt | AC | 2 ms | 3680 KiB |
| 01-30.txt | AC | 2 ms | 3576 KiB |
| 01-31.txt | AC | 2 ms | 3612 KiB |
| 01-32.txt | AC | 3 ms | 3672 KiB |
| 01-33.txt | AC | 3 ms | 3624 KiB |
| 01-34.txt | AC | 2 ms | 3572 KiB |
| 01-35.txt | AC | 2 ms | 3612 KiB |
| 01-36.txt | AC | 3 ms | 3588 KiB |
| 01-37.txt | AC | 2 ms | 3572 KiB |
| 01-38.txt | AC | 3 ms | 3660 KiB |
| 01-39.txt | AC | 2 ms | 3560 KiB |
| 01-40.txt | AC | 2 ms | 3724 KiB |
| 01-41.txt | AC | 3 ms | 3540 KiB |
| 01-42.txt | AC | 2 ms | 3612 KiB |
| 01-43.txt | AC | 2 ms | 3528 KiB |
| 01-44.txt | AC | 3 ms | 3680 KiB |
| 01-45.txt | AC | 3 ms | 3644 KiB |
| 01-46.txt | AC | 3 ms | 3664 KiB |
| 02-01.txt | AC | 57 ms | 4244 KiB |
| 02-02.txt | AC | 48 ms | 4236 KiB |
| 02-03.txt | AC | 51 ms | 4148 KiB |
| 02-04.txt | AC | 51 ms | 4164 KiB |
| 02-05.txt | AC | 7 ms | 3620 KiB |
| 02-06.txt | AC | 2 ms | 3508 KiB |
| 02-07.txt | AC | 51 ms | 4072 KiB |
| 02-08.txt | AC | 101 ms | 4412 KiB |
| 02-09.txt | AC | 73 ms | 4104 KiB |
| 02-10.txt | AC | 120 ms | 4216 KiB |
| 02-11.txt | AC | 71 ms | 4076 KiB |
| 02-12.txt | AC | 117 ms | 4224 KiB |
| sample-01.txt | AC | 8 ms | 3584 KiB |
| sample-02.txt | AC | 2 ms | 3556 KiB |