Submission #285204

# Submission time Handle Problem Language Result Execution time Memory
285204 2020-08-28T11:45:25 Z peti1234 Highway Tolls (IOI18_highway) C++17
12 / 100
168 ms 2624 KB
#include <bits/stdc++.h>
#include "highway.h"
using namespace std;
const int c=90002;
long long m, dist, xo, s, kul, ert[c], cnt, cs1, cs2;;
bool v[c];
vector<int> sz;
/*int ask(vector<int> sz) {
    for (int i=0; i<m; i++) cout << sz[i] << " ";
    int x;
    cin >> x;
    return x;
}
void answer(int a, int b) {
    cout << "valasz " << a << " " << b << "\n";
}*/
void find_pair(int n, vector<int> x, vector<int> y, int gy, int e) {
    m=x.size(), sz.resize(m);
    for (int i=0; i<m; i++) sz[i]=0;
    dist=ask(sz);
    for (int i=0; i<18; i++) {
        for (int j=0; j<m; j++) {
            if (((x[j])&(1<<i))==(((y[j])&(1<<i)))) sz[j]=0;
            else sz[j]=1;
        }
        s=ask(sz);
        kul=(s-dist)/(e-gy);
        if (kul%2) xo+=(1<<i);
    }
    for (int i=0; i<n; i++) {
        int f=(i^xo);
        if (!v[i] && f<n && !v[f]) v[i]=1, v[f]=1, cnt++, ert[i]=cnt;
    }
    for (int i=0; i<18; i++) {
        for (int j=0; j<m; j++) {
            if (ert[x[j]&(1<<i)]==ert[y[j]&(1<<i)]) sz[j]=0;
            else sz[j]=1;
        }
        s=ask(sz);
        kul=(s-dist)/(e-gy);
        if (kul%2) cs1+=(1<<i);
    }
    cs2=(cs1^xo);
    answer(cs1, cs2);
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB Output is correct
2 Correct 1 ms 256 KB Output is correct
3 Correct 1 ms 384 KB Output is correct
4 Correct 1 ms 384 KB Output is correct
5 Correct 1 ms 384 KB Output is correct
6 Correct 1 ms 384 KB Output is correct
7 Correct 1 ms 256 KB Output is correct
8 Correct 1 ms 256 KB Output is correct
9 Correct 1 ms 384 KB Output is correct
10 Correct 1 ms 256 KB Output is correct
11 Correct 1 ms 384 KB Output is correct
12 Correct 1 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 384 KB Output is correct
2 Correct 13 ms 512 KB Output is correct
3 Correct 129 ms 2624 KB Output is correct
4 Correct 111 ms 2580 KB Output is correct
5 Correct 128 ms 2476 KB Output is correct
6 Correct 124 ms 2472 KB Output is correct
7 Correct 161 ms 2484 KB Output is correct
8 Correct 168 ms 2624 KB Output is correct
9 Correct 148 ms 2544 KB Output is correct
10 Correct 137 ms 2568 KB Output is correct
11 Correct 113 ms 2468 KB Output is correct
12 Correct 160 ms 2608 KB Output is correct
13 Correct 124 ms 2408 KB Output is correct
14 Correct 117 ms 2464 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 11 ms 640 KB Output is incorrect: {s, t} is wrong.
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 384 KB Output is incorrect: {s, t} is wrong.
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 18 ms 504 KB Output is incorrect: {s, t} is wrong.
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 17 ms 512 KB Output is incorrect: {s, t} is wrong.
2 Halted 0 ms 0 KB -