#include <bits/stdc++.h>
using namespace std;
typedef long long llo;
#define a first
#define b second
#define pb push_back
#include "shortcut.h"
llo pre[1000001];
int n;
llo it[1000001];
llo ss;
llo ma[2][2];
bool check(llo mid){
llo ma=-1e18;
llo ma2=-1e18;
llo ma3=-1e18;
llo ma4=-1e18;
llo st=1;
for(int i=0;i<n;i++){
for(int j=i+1;j<n;j++){
/*if(i==1 and j==3){
cout<<pre[j]-pre[i]+it[i]+it[j]<<":"<<endl;
}*/
if(pre[j]-pre[i]+it[i]+it[j]>mid){
st=0;
ma=max(ma,pre[i]+pre[j]+it[i]+it[j]);
ma2=max(ma2,pre[i]-pre[j]+it[i]+it[j]);
ma3=max(ma3,-pre[i]-pre[j]+it[i]+it[j]);
ma4=max(ma4,-pre[i]+pre[j]+it[i]+it[j]);
}
}
}
if(st==1){
return true;
}
//return false;
ma=mid-ma-ss;
ma=-ma;
ma2=mid-ma2-ss;
ma2=-ma2;
ma3=mid-ma3-ss;
ma4=mid-ma4-ss;
//-pre[i]-pre[j]<=ma
//pre[i]+pre[j]>=ma
//pre[i]+pre[j]<=ma3
//-pre[i]+pre[j]<=ma2
//pre[i]-pre[j]>=ma2
//pre[i]-pre[j]<=ma4
llo ind=0;
llo ind3=0;
llo ind2=0;
llo ind4=0;
for(int i=1;i<n;i++){
while(ind+1<i){
if(pre[i]+pre[ind]<ma){
ind++;
}
else{
break;
}
}
while(ind3+1<i){
if(pre[i]+pre[ind3+1]<=ma3){
ind3++;
}
else{
break;
}
}
/*while(ind2+1<i){
if(pre[i]-pre[ind2]>ma4){
ind2--;
}
}
if(pre[])
*/
for(int j=0;j<i;j++){
//if(pre[i]+pre[j]>=ma){
//if(pre[i]+pre[j]<=ma3){
if(j>=ind and j<=ind3){
if(pre[j]-pre[i]>=ma2){
if(pre[j]-pre[i]<=ma4){
return true;
}
}
}
//}
//}
}
}
//ma to ma3 range
return false;
}
long long find_shortcut(int nn, std::vector<int> l, std::vector<int> d, int c)
{
n=nn;
pre[0]=0;
ss=c;
for(int i=1;i<n;i++){
pre[i]=pre[i-1]+l[i-1];
}
for(int i=0;i<n;i++){
it[i]=d[i];
}
llo low=-1;
for(int i=52;i>=0;i--){
if(check(low+(1LL<<i))==false){
low+=(1LL<<i);
}
}
return low+1;
}
Compilation message
shortcut.cpp: In function 'bool check(llo)':
shortcut.cpp:56:6: warning: unused variable 'ind2' [-Wunused-variable]
56 | llo ind2=0;
| ^~~~
shortcut.cpp:57:6: warning: unused variable 'ind4' [-Wunused-variable]
57 | llo ind4=0;
| ^~~~
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1 ms |
204 KB |
n = 4, 80 is a correct answer |
2 |
Correct |
1 ms |
204 KB |
n = 9, 110 is a correct answer |
3 |
Correct |
1 ms |
204 KB |
n = 4, 21 is a correct answer |
4 |
Correct |
0 ms |
204 KB |
n = 3, 4 is a correct answer |
5 |
Correct |
1 ms |
204 KB |
n = 2, 62 is a correct answer |
6 |
Correct |
0 ms |
204 KB |
n = 2, 3 is a correct answer |
7 |
Incorrect |
1 ms |
204 KB |
n = 3, incorrect answer: jury 29 vs contestant 20 |
8 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1 ms |
204 KB |
n = 4, 80 is a correct answer |
2 |
Correct |
1 ms |
204 KB |
n = 9, 110 is a correct answer |
3 |
Correct |
1 ms |
204 KB |
n = 4, 21 is a correct answer |
4 |
Correct |
0 ms |
204 KB |
n = 3, 4 is a correct answer |
5 |
Correct |
1 ms |
204 KB |
n = 2, 62 is a correct answer |
6 |
Correct |
0 ms |
204 KB |
n = 2, 3 is a correct answer |
7 |
Incorrect |
1 ms |
204 KB |
n = 3, incorrect answer: jury 29 vs contestant 20 |
8 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1 ms |
204 KB |
n = 4, 80 is a correct answer |
2 |
Correct |
1 ms |
204 KB |
n = 9, 110 is a correct answer |
3 |
Correct |
1 ms |
204 KB |
n = 4, 21 is a correct answer |
4 |
Correct |
0 ms |
204 KB |
n = 3, 4 is a correct answer |
5 |
Correct |
1 ms |
204 KB |
n = 2, 62 is a correct answer |
6 |
Correct |
0 ms |
204 KB |
n = 2, 3 is a correct answer |
7 |
Incorrect |
1 ms |
204 KB |
n = 3, incorrect answer: jury 29 vs contestant 20 |
8 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1 ms |
204 KB |
n = 4, 80 is a correct answer |
2 |
Correct |
1 ms |
204 KB |
n = 9, 110 is a correct answer |
3 |
Correct |
1 ms |
204 KB |
n = 4, 21 is a correct answer |
4 |
Correct |
0 ms |
204 KB |
n = 3, 4 is a correct answer |
5 |
Correct |
1 ms |
204 KB |
n = 2, 62 is a correct answer |
6 |
Correct |
0 ms |
204 KB |
n = 2, 3 is a correct answer |
7 |
Incorrect |
1 ms |
204 KB |
n = 3, incorrect answer: jury 29 vs contestant 20 |
8 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1 ms |
204 KB |
n = 4, 80 is a correct answer |
2 |
Correct |
1 ms |
204 KB |
n = 9, 110 is a correct answer |
3 |
Correct |
1 ms |
204 KB |
n = 4, 21 is a correct answer |
4 |
Correct |
0 ms |
204 KB |
n = 3, 4 is a correct answer |
5 |
Correct |
1 ms |
204 KB |
n = 2, 62 is a correct answer |
6 |
Correct |
0 ms |
204 KB |
n = 2, 3 is a correct answer |
7 |
Incorrect |
1 ms |
204 KB |
n = 3, incorrect answer: jury 29 vs contestant 20 |
8 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1 ms |
204 KB |
n = 4, 80 is a correct answer |
2 |
Correct |
1 ms |
204 KB |
n = 9, 110 is a correct answer |
3 |
Correct |
1 ms |
204 KB |
n = 4, 21 is a correct answer |
4 |
Correct |
0 ms |
204 KB |
n = 3, 4 is a correct answer |
5 |
Correct |
1 ms |
204 KB |
n = 2, 62 is a correct answer |
6 |
Correct |
0 ms |
204 KB |
n = 2, 3 is a correct answer |
7 |
Incorrect |
1 ms |
204 KB |
n = 3, incorrect answer: jury 29 vs contestant 20 |
8 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1 ms |
204 KB |
n = 4, 80 is a correct answer |
2 |
Correct |
1 ms |
204 KB |
n = 9, 110 is a correct answer |
3 |
Correct |
1 ms |
204 KB |
n = 4, 21 is a correct answer |
4 |
Correct |
0 ms |
204 KB |
n = 3, 4 is a correct answer |
5 |
Correct |
1 ms |
204 KB |
n = 2, 62 is a correct answer |
6 |
Correct |
0 ms |
204 KB |
n = 2, 3 is a correct answer |
7 |
Incorrect |
1 ms |
204 KB |
n = 3, incorrect answer: jury 29 vs contestant 20 |
8 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1 ms |
204 KB |
n = 4, 80 is a correct answer |
2 |
Correct |
1 ms |
204 KB |
n = 9, 110 is a correct answer |
3 |
Correct |
1 ms |
204 KB |
n = 4, 21 is a correct answer |
4 |
Correct |
0 ms |
204 KB |
n = 3, 4 is a correct answer |
5 |
Correct |
1 ms |
204 KB |
n = 2, 62 is a correct answer |
6 |
Correct |
0 ms |
204 KB |
n = 2, 3 is a correct answer |
7 |
Incorrect |
1 ms |
204 KB |
n = 3, incorrect answer: jury 29 vs contestant 20 |
8 |
Halted |
0 ms |
0 KB |
- |