Submission #879899

# Submission time Handle Problem Language Result Execution time Memory
879899 2023-11-28T09:43:53 Z abcvuitunggio Aliens (IOI07_aliens) C++17
90 / 100
1 ms 344 KB
#include <bits/stdc++.h>
using namespace std;
int n,x,y,m,a;
int ask(int i, int j){
    if (min(i,j)<1||max(i,j)>n)
        return 0;
    cout << "examine " << i << ' ' << j << endl;
    string s;
    cin >> s;
    return (s=="true");
}
int f(int x, int y, int dx, int dy, int lim=2000000000){
    int l=1,r=lim,kq=0;
    while (l<=r){
        int mid=(l+r)>>1;
        if (ask(x+mid*dx,y+mid*dy)){
            kq=mid;
            l=mid+1;
        }
        else
            r=mid-1;
    }
    return kq;
}
int main(){
    cin >> n >> x >> y;
    y+=f(x,y,0,1);
    a=f(x,y,0,-1)+1;
    if (a%5==0&&!ask(x,y-a/5))
        m=a/5;
    else if (a%3==0&&!ask(x,y-a/3))
        m=a/3;
    else
        m=a;
    x+=f(x,y,1,0)-m/2;
    y-=m/2;
    int b=f(x,y,m*2,m*2,5)-f(x,y,-m*2,-m*2,5),c=f(x,y,m*2,-m*2,5)-f(x,y,-m*2,m*2,5);
    cout << "solution " << x+(b+c)*m << ' ' << y+(b-c)*m;
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 1 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB Output is correct
2 Correct 1 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB Output is correct
2 Correct 1 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Correct 1 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 1 ms 344 KB Output is correct
3 Correct 1 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 344 KB Incorrect
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Correct 1 ms 344 KB Output is correct