QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#198888 | #6422. Evil Coordinate | rsj | WA | 16ms | 3816kb | C++14 | 1.3kb | 2023-10-03 18:19:18 | 2023-10-03 18:19:18 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
const int N = 1e5+5;
int a[4];
char s[N];
pair<int,int> g(int x,int d) {
if(x==0) return make_pair(0,d);
else if(x==1) return make_pair(0,-d);
else if(x==2) return make_pair(-d,0);
else return make_pair(d,0);
}
void print(int x) {
char c;
if(x==0)c='U';
if(x==1)c='D';
if(x==2)c='L';
if(x==3)c='R';
int t=a[x];
while(t--)putchar(c);
}
int p[4];
void get() {
int x,y,i;
cin>>x>>y; memset(a,0,sizeof(a));
cin>>(s+1); int n=strlen(s+1);
if(x==0&&y==0) return puts("Impossible"),void();
for(i=1;i<=n;i++) {
switch(s[i]) {
case 'U': a[0]++; break;
case 'D': a[1]++; break;
case 'L': a[2]++; break;
case 'R': a[3]++; break;
}
}
for(i=0;i<4;i++) p[i]=i;
int ok=0;
do {
int d=0,q=0,np,nq,ans=1;
for(i=0;i<4;i++) {
auto tmp=g(p[i],a[p[i]]);
np=d+tmp.first,nq=q+tmp.second;
if(d==np&&d==x&&((q<=y&&y<=nq)||(nq<=y&&y<=q))) ans=0;
if(q==nq&&q==y&&((d<=x&&x<=np)||(np<=x&&x<=d))) ans=0;
d=np,q=np;
}
if(ans) {
for(i=0;i<4;i++) print(p[i]); putchar('\n');
ok=1;
break;
}
} while(next_permutation(p,p+4));
if(!ok) puts("Impossible");
}
int main() {
// freopen("5.in","r",stdin);
int T; cin>>T;
while(T--) get();
return 0;
}
详细
Test #1:
score: 100
Accepted
time: 0ms
memory: 3572kb
input:
5 1 1 RURULLD 0 5 UUU 0 3 UUU 0 2 UUU 0 0 UUU
output:
UUDLLRR UUU Impossible Impossible Impossible
result:
ok 5 cases
Test #2:
score: -100
Wrong Answer
time: 16ms
memory: 3816kb
input:
11109 6 0 RUDUDR 2 0 URU 0 0 UDRU 0 0 R -1 1 LDUUDDRUUL -1 5 RRUUUDUUU -8 4 RRDRLDR 2 0 UD 0 0 UUDD 3 -2 LDDLLLRR 3 -2 LDRURLDD 1 0 RRL -1 0 DUDDLLRDU -4 0 LL -1 -1 DLRLDLUDUR 1 4 URDULUR 0 0 DDUUDUDDDD 0 2 UU 1 0 RRULD 0 -2 LDLRLLDRRL 0 1 RLRLLRLUR -3 0 RL 0 0 D 0 0 L 0 0 DDLRRUDRUD 0 0 DULU 2 0 RR...
output:
UUDDRR UUR Impossible Impossible UUUUDDDLLR UUUUUUDRR DDLRRRR UD Impossible DDLLLLRR UDDDLLRR LRR UUDDDDRLL LL UUDDDLLLRR UUUDLRR Impossible Impossible UDLRR LLLLLDDRRR LLLLURRRR LR Impossible Impossible Impossible Impossible LLLLRRRRRR LLLUURRRRR UDLLL Impossible UUUDDDL UUDDRR RRRLLLL UUDDLRR DDRR...
result:
wrong answer case 5, participant's output goes through forbidden coordinate