QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#606975#6422. Evil Coordinatekarito#AC ✓24ms3808kbC++201.4kb2024-10-03 13:22:242024-10-03 13:22:24

Judging History

This is the latest submission verdict.

  • [2024-10-03 13:22:24]
  • Judged
  • Verdict: AC
  • Time: 24ms
  • Memory: 3808kb
  • [2024-10-03 13:22:24]
  • Submitted

answer

#include <bits/stdc++.h>

using namespace std;

int c[5];
int p[5];
int xc,yc;
map<char,int> mp1;
map<int,char> mp2;

bool check()
{
    int x=0,y=0;
    if(x==xc&&y==yc) return 0;
    for(int i=1;i<=4;i++)
    {
        int u=p[i];
        for(int j=1;j<=c[u];j++)
        {
            if(u==1) y++;
            else if(u==2) x--;
            else if(u==3) x++;
            else y--;
            if(x==xc&&y==yc) return 0;
        }
    }
    return 1;
}

void solve()
{
    cin >> xc >> yc;
    for(int i=1;i<=4;i++) c[i]=0;
    for(int i=1;i<=4;i++) p[i]=i;
    string s;
    cin >> s;
    for(auto x : s)
    {
        c[mp1[x]]++;
    }

    do
    {
        if(check())
        {
            // for(int i=1;i<=4;i++) cout << p[i] << " ";
            // cout << "\n";
            for(int i=1;i<=4;i++)
            {
                int x=p[i];
                char ss=mp2[x];
                for(int j=1;j<=c[x];j++) cout << ss;
            }
            cout << "\n";
            return;
        }
    }while(next_permutation(p+1,p+5));
    cout << "Impossible\n";
}

int main()
{
    mp1['U']=1;
    mp1['L']=2;
    mp1['R']=3;
    mp1['D']=4;
    mp2[1]='U';
    mp2[2]='L';
    mp2[3]='R';
    mp2[4]='D';
    ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    int T;
    cin >> T;
    while(T--) solve();
    return 0;

}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 1ms
memory: 3632kb

input:

5
1 1
RURULLD
0 5
UUU
0 3
UUU
0 2
UUU
0 0
UUU

output:

UULLRRD
UUU
Impossible
Impossible
Impossible

result:

ok 5 cases

Test #2:

score: 0
Accepted
time: 24ms
memory: 3788kb

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:

UURRDD
UUR
Impossible
Impossible
Impossible
UUUUUURRD
LRRRRDD
UD
Impossible
LLLLRRDD
ULLRRDDD
Impossible
UULLDDDDR
LL
Impossible
UUULRRD
Impossible
Impossible
Impossible
LLLLLRRRDD
Impossible
LR
Impossible
Impossible
Impossible
Impossible
Impossible
LLLRRRRRUU
ULLLD
Impossible
UUULDDD
UURRDD
Impossi...

result:

ok 11109 cases

Test #3:

score: 0
Accepted
time: 14ms
memory: 3808kb

input:

11107
1 0
LLRLRURLR
1 0
LLRR
0 1
R
1 0
LLLRLRRR
1 0
RUL
0 1
UD
1 0
RLRLU
0 1
DDDUUUDU
1 0
RURRLLRLL
1 0
LRLR
1 0
ULR
0 1
R
0 1
DDUUUDR
0 1
UUDDUDDU
0 1
DDUUDU
1 0
RRLRLLRLRL
1 0
RLRRLL
1 0
LUR
1 0
U
1 0
LRRRLLLR
0 1
DRUUDDUDU
0 1
DUUDDUR
1 0
LRLRLR
0 1
UUDDDUDU
0 1
R
0 1
UDUDDU
0 1
DUUDUD
1 0
RRLRRR...

output:

ULLLLRRRR
LLRR
R
LLLLRRRR
ULR
DU
ULLRR
DDDDUUUU
ULLLLRRRR
LLRR
ULR
R
RUUUDDD
DDDDUUUU
DDDUUU
LLLLLRRRRR
LLLRRR
ULR
U
LLLLRRRR
RUUUUDDDD
RUUUDDD
LLLRRR
DDDDUUUU
R
DDDUUU
DDDUUU
LLLLLRRRRR
DDDDUUUU
DDUU
ULLLLRRRR
DDUU
LLLRRR
ULR
ULR
U
ULR
LLLRRR
LLLLLRRRRR
U
DDDUUU
R
LLLRRR
RUUUUDDDD
RUUUUDDDD
LLLRRR
...

result:

ok 11107 cases