Submission #943124

#TimeUsernameProblemLanguageResultExecution timeMemory
943124Tuanlinh123Nicelines (RMI20_nicelines)C++17
0 / 100
31 ms448 KiB
#include "nice_lines.h" #include<bits/stdc++.h> #define ll int #define pll pair<ll, ll> #define pb push_back #define mp make_pair #define fi first #define se second #define ld long double #define sz(a) ((ll)(a).size()) using namespace std; const ld eps=1e-6; void solve(ll subtask_id, ll n) { ll V=1e4, X=V*2+1; auto calc=[&](ld y){return query(X, y);}; vector <ll> va, vb; function<void(ld, ld, ld, ld)> DnC=[&](ld l, ld r, ld fl, ld fr) { ld mid=(l+r)/2, fm=calc(mid); if (abs((fl+fr)/2-fm)<eps) return; if ((r-l)<1.0) { ll val=0; if (l<=round(l)<=r) val=round(l); if (l<=round(r)<=r) val=round(r); ll b=val%X, a=(val-b)/X; if (b<0) b+=X, a--; if (b>V) b-=X, a++; va.pb(a), vb.pb(b); return; } DnC(l, mid, fl, fm), DnC(mid, r, fm, fr); return; }; ld l=-V*X-V, r=V*X+V; DnC(l, r, calc(l), calc(r)); the_lines_are(va, vb); }

Compilation message (stderr)

nicelines.cpp: In lambda function:
nicelines.cpp:26:18: warning: comparisons like 'X<=Y<=Z' do not have their mathematical meaning [-Wparentheses]
   26 |             if (l<=round(l)<=r) val=round(l);
      |                 ~^~~~~~~~~~
nicelines.cpp:27:18: warning: comparisons like 'X<=Y<=Z' do not have their mathematical meaning [-Wparentheses]
   27 |             if (l<=round(r)<=r) val=round(r);
      |                 ~^~~~~~~~~~
#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...