QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#198886 | #6422. Evil Coordinate | rsj | WA | 20ms | 3696kb | C++14 | 1.2kb | 2023-10-03 18:17:57 | 2023-10-03 18:17:58 |
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;
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() {
int T; cin>>T;
while(T--) get();
return 0;
}
详细
Test #1:
score: 100
Accepted
time: 1ms
memory: 3424kb
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: 20ms
memory: 3696kb
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 UUDDDDLLR LL UUDDDLLLRR UUUDLRR Impossible Impossible UDLRR LLLLLDDRRR LLLLURRRR LR Impossible Impossible Impossible Impossible LLLLRRRRRR LLLUURRRRR UDLLL R UUUDDDL UUDDRR LLLLRRR UUDDLRR DDRRUUUUU UUU...
result:
wrong answer case 5, participant's output goes through forbidden coordinate