QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#198888#6422. Evil CoordinatersjWA 16ms3816kbC++141.3kb2023-10-03 18:19:182023-10-03 18:19:18

Judging History

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

  • [2023-10-03 18:19:18]
  • 评测
  • 测评结果:WA
  • 用时:16ms
  • 内存:3816kb
  • [2023-10-03 18:19:18]
  • 提交

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;
}

Details

Tip: Click on the bar to expand more detailed information

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