Submission #943612

#TimeUsernameProblemLanguageResultExecution timeMemory
943612abcvuitunggioNicelines (RMI20_nicelines)C++17
0 / 100
82 ms944 KiB
#include "nice_lines.h"
#include <bits/stdc++.h>
#define ld long double
using namespace std;
const int x=1e5;
const ld eps=1e-9;
vector <int> a,b;
void dnc(ld l, ld r, ld lo, ld hi){
    ld mid=(l+r)/2,m=query(x,mid);
    if (ceil(l)>floor(r))
        return;
    if (abs((lo+hi)/2-m)<eps)
        return;
    if (r-l<1){
        int y=floor(r);
        int B=(y%x+x)%x;
        if (B>10000)
            B-=x;
        int A=(y-B)/x;
        a.push_back(A);
        b.push_back(B);
        return;
    }
    dnc(l,floor(mid),lo,m);
    dnc(ceil(mid),r,m,hi);
}
void solve(int subtask_id, int N){
    ld L=-1e9-1e4,R=1e9+1e4+1e-6;
    dnc(L,R,query(x,L),query(x,R));
    the_lines_are(a,b);
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...