#include <bits/stdc++.h>
using namespace std;
#define fast_io ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
#define N lli(2e5)
#define MOD lli(1e9 + 7)
typedef long long int lli;
typedef vector<lli> vlli;
typedef pair<lli, lli> plli;
typedef vector<plli> vplli;
typedef pair<lli, plli> pplli;
typedef vector<pplli> vpplli;
int query(int s,int t);
void answer(int i, int a);
lli m,k,q;
void solve(int n){
vlli boy, kuc;
vlli vect;
boy.push_back(0);
kuc.push_back(0);
for(lli i = 2;i<=n;i++){
lli su = query(i-1,i);
vect.push_back(su);
if(i == 2){
boy.push_back(su);
kuc.push_back(-su);
continue;
}
lli suan = query(i-2,i);
if(suan == su + vect[vect.size()-2]){
if(boy.back() > boy[boy.size()-2])
boy.push_back(boy.back() + su);
else
boy.push_back(boy.back() - su);
if(kuc.back() > kuc[kuc.size() - 2])
kuc.push_back(kuc.back() + su);
else
kuc.push_back(kuc.back() - su);
}else{
if(boy.back() > boy[boy.size()-2])
boy.push_back(boy.back() - su);
else
boy.push_back(boy.back() + su);
if(kuc.back() > kuc[kuc.size() - 2])
kuc.push_back(kuc.back() - su);
else
kuc.push_back(kuc.back() + su);
}
}
lli enk = 0;
for(lli i = 0;i<n;i++)
enk = min(enk, kuc[i]);
lli bisir = 0, nsir = 0;
for(lli i = 0;i<n;i++){
kuc[i] = -enk + 1 + kuc[i];
if(kuc[i] == 1)
bisir = i;
if(kuc[i] == n)
nsir = i;
}
if(bisir <= nsir){
for(lli i = 1;i<=n;i++)
answer(i, kuc[i-1]);
return;
}
enk = 0;
for(lli i = 0;i<n;i++)
enk = min(enk, boy[i]);
for(lli i = 0;i<n;i++){
boy[i] = -enk + 1 + boy[i];
answer(i + 1, boy[i]);
}
}
/*int main()
{
fast_io
cin >> k;
solve(k);
}
int query(int s, int t){
cout << s << " " << t << endl;
cin >> k;
return k;
}
void answer(int i, int a){
cout << a << " ";
}*/
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |