QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#505974#6422. Evil CoordinateUmokWA 0ms3604kbC++201.8kb2024-08-05 14:21:192024-08-05 14:21:19

Judging History

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

  • [2024-08-05 14:21:19]
  • 评测
  • 测评结果:WA
  • 用时:0ms
  • 内存:3604kb
  • [2024-08-05 14:21:19]
  • 提交

answer

#include <bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(0), cin.tie(0), cout.tie(0)
#define endl '\n'
const int N = 2e5 + 5;
#define int long long
typedef pair<int, int> PII;
#define MAX LONG_LONG_MAX
#define mod 10007
#define eps 1e-7
int ar[N];
int l, r, d, u, a, b;
void solve()
{
    l = d = r = u = 0;
    string s;
    cin >> a >> b;

    cin >> s;

    for (char c : s)
    {
        if (c == 'L')
            l++;
        else if (c == 'R')
            r++;
        else if (c == 'U')
            u++;
        else
            d++;
    }
    PII pot = {l + r, u + d};
    if (pot.first == a && pot.second == b || a == 0 && b == 0)
    {
        cout << "impossible" << endl;
        return;
    }

    int x = l + r, y = u + d;
    if (x == a || y == b)
    {
        if (x == a && u - d >= b && b > 0 || x == a && u - d <= b && b < 0)
        {
            cout << "impossbile" << endl;
            return;
        }
        if (y == b && r - l >= a && a > 0 || y == b && r - l < a && a < 0)
        {
            cout << "impossbile" << endl;
            return;
        }
    }
    if (a != x)
    {
        for (int i = 1; i <= u; i++)
            cout << "U";
        for (int i = 1; i <= d; i++)
            cout << "D";
        for (int i = 1; i <= l; i++)
            cout << "L";
        for (int i = 1; i <= r; i++)
            cout << "R";
    }
    else if (b != y)
    {

        for (int i = 1; i <= l; i++)
            cout << "L";
        for (int i = 1; i <= r; i++)
            cout << "R";
        for (int i = 1; i <= u; i++)
            cout << "U";
        for (int i = 1; i <= d; i++)
            cout << "D";
    }
    cout << endl;
}

signed main()
{
    IOS;
    int t;
    cin >> t;
    while (t--)
        solve();

    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 0
Wrong Answer
time: 0ms
memory: 3604kb

input:

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

output:

UUDLLRR
UUU
impossible
impossbile
impossible

result:

wrong answer Line "impossible" doesn't correspond to pattern "[UDLR]{1,100000}|Impossible"