QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#202149 | #4432. Jungle Trail | Forever_Young# | WA | 103ms | 46128kb | C++23 | 1.5kb | 2023-10-05 20:15:17 | 2023-10-05 20:15:17 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
#define rep(i,n) for(int i=1;i<=n;i++)
#define per(i,n) for(int i=n;i>=1;i--)
#define mp make_pair
#define pb push_back
int n,m;
char s[2100][2100];
bool f[2100][2100];
int row[2100],col[2100];
pair<int,int> pre[2100][2100];
int main()
{
int T;
cin>>T;
while (T--)
{
scanf("%d%d",&n,&m);
rep(i,n)scanf("%s",s[i]+1);
rep(i,n)rep(j,m)f[i][j]=0;
if (f[1][1]!='#')f[1][1]=1;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
{
if (i==1 && j==1)
if (f[1][1]!='#')f[1][1]=1;
if (i>1 && f[i-1][j]==1)pre[i][j]=mp(i-1,j),f[i][j]=1;
if (i>1 && f[i][j-1]==1)pre[i][j]=mp(i,j-1),f[i][j]=1;
if (s[i][j]=='#')f[i][j]=0;
}
if (f[n][m]==0)puts("NIE");
else
{
puts("TAK");
static vector<char> ans; ans.clear();
int nowx=n,nowy=m;
while (nowx!=1 || nowy!=1)
{
if (nowx==pre[nowx][nowy].first)ans.pb('P'); else ans.pb('D');
tie(nowx,nowy)=pre[nowx][nowy];
}
reverse(ans.begin(),ans.end());
nowx=1,nowy=1;
for(int i=1;i<=n;i++)row[i]=-1;
for(int i=1;i<=m;i++)col[i]=-1;
for(auto p:ans)
{
if (p=='P')nowy++; else nowx++;
int f; if (s[nowx][nowy]=='@')f=1;
if (row[nowx]==1)f^=1;
if (col[nowy]==1)f^=1;
if (f)
{
if (row[nowx]==-1)row[nowx]=1;
else col[nowy]=1;
}
}
for(int i=1;i<=n;i++)if (row[i]==1)putchar('T'); else putchar('N'); puts("");
for(int i=1;i<=m;i++)if (col[i]==1)putchar('T'); else putchar('N'); puts("");
for(auto p:ans)putchar(p); puts("");
}
}
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 0
Wrong Answer
time: 103ms
memory: 46128kb
input:
486 4 5 ..#.. @@O@@ ##@#O ..@.@ 2 2 OO OO 2 2 @@ @@ 2 2 @@ #@ 2 2 @O #@ 2 2 @@ OO 2 2 O# @O 2 2 @# #@ 2 2 @. .@ 2 2 @# .O 2 2 OO .O 10 10 @O@O#O@@@# OO#@#@@#OO #@#@#O##O@ OO##@@O#@O O##@@#@O#@ OO@OO@@@O@ @O#@#@O#@O @OOOOO@##. O@OOO##O@@ OO@@OOOO#@ 10 10 @@#OOO#O@@ #@@OO@@.O@ #.O@@O#@@O OO@@#O@#O@ .#...
output:
TAK NTNT NNTNN DPPDDPP TAK NT NN DP TAK NT NN DP NIE NIE TAK NN NN DP TAK NT NN DP NIE TAK NT NN DP TAK NT NN DP TAK NN NN DP NIE NIE TAK NTTTTTTTTT NNNNTNTNNT DDDDDPDDDPPPPPDPPP TAK NTTTTTTTTT NNTNNTNNNT DDDPPDPDDDDDPPPPPP TAK NTTTNNNTTN NNNNNNTNNN DDDPPDDPDPDPPPDPPD NIE TAK NTTTTTTTTT NNNNNTNNNN D...
result:
wrong answer you dead (test case 1)