QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#414393#6749. TargetjujuyiWA 1ms4548kbC++171.2kb2024-05-18 22:37:442024-05-18 22:37:46

Judging History

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

  • [2024-05-18 22:37:46]
  • 评测
  • 测评结果:WA
  • 用时:1ms
  • 内存:4548kb
  • [2024-05-18 22:37:44]
  • 提交

answer

#include <bits/stdc++.h>
using namespace std;

using i64 = long long;

int __OneWan_2024 = [](){
    ios::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    return 0;
}();
int dist[50005];
array<int, 2> pre[50005];
int main() {
    double a, b;
    cin >> a >> b;
    int ta = a * 20000, tb = b * 20000;
    fill(dist, dist + 50005, 200);
    dist[ta] = 0;
    queue<int> que;
    que.push(ta);
    pre[ta] = {-1, -1};
    while (!que.empty()) {
        int x = que.front();
        que.pop();
        {
            int tx = x * 0.5;
            if (dist[tx] > dist[x] + 1) {
                dist[tx] = dist[x] + 1;
                pre[tx] = {x, 1};
                que.push(tx);
            }
        }
        {
            int tx = (x + 10000);
            if (tx <= 50000) {
                if (dist[tx] > dist[x] + 1) {
                    dist[tx] = dist[x] + 1;
                    pre[tx] = {x, 2};
                    que.push(tx);
                }
            }
        }
    }
    vector<int> ans;
    int now = tb;
    while (pre[tb][0] != -1) {
        ans.push_back(pre[tb][1]);
        tb = pre[tb][0];
    }
    for (auto &x : ans) {
        cout << x;
    }
    return 0;
}

详细

Test #1:

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

input:

0.5 0.25

output:

1

result:

ok ok

Test #2:

score: 0
Accepted
time: 1ms
memory: 4328kb

input:

1 0.75

output:

12

result:

ok ok

Test #3:

score: 0
Accepted
time: 1ms
memory: 4548kb

input:

1 0

output:

111111111111111

result:

ok ok

Test #4:

score: -100
Wrong Answer
time: 1ms
memory: 4268kb

input:

0.361954 0.578805

output:

211121121111

result:

wrong answer wa