QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#198886#6422. Evil CoordinatersjWA 20ms3696kbC++141.2kb2023-10-03 18:17:572023-10-03 18:17:58

Judging History

你现在查看的是最新测评结果

  • [2023-10-03 18:17:58]
  • 评测
  • 测评结果:WA
  • 用时:20ms
  • 内存:3696kb
  • [2023-10-03 18:17:57]
  • 提交

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