# |
Submission time |
Handle |
Problem |
Language |
Result |
Execution time |
Memory |
61147 |
2018-07-25T08:59:02 Z |
dukati8 |
Gap (APIO16_gap) |
C++14 |
|
111 ms |
3552 KB |
#include "gap.h"
#include <bits/stdc++.h>
using namespace std;
#define rep(i,a,b) for (int i=a; i<int(b); i++)
long long findGap(int T, int N)
{
if (T==1) {
vector<long long> vals;
long long hi=1e18;
long long lo=0;
long long ans1,ans2;
rep (i,0,(N+1)/2) {
assert(lo<=hi);
MinMax(lo,hi,&ans1,&ans2);
vals.push_back(ans1);
vals.push_back(ans2);
lo=ans1+1;
hi=ans2-1;
}
sort(vals.begin(),vals.end());
long long maxdist=0;
rep (i,0,vals.size()-1) {
maxdist=max(maxdist,vals[i+1]-vals[i]);
//cout << maxdist << endl;
}
return maxdist;
}
if (T==2) {
long long NL=N;
long long one=1;
vector<long long> vals;
long long hi,lo;
MinMax(0,1e18,&lo,&hi);
//Vi har nu max och min för alla tal.
long long expdist=(hi-lo+NL-one-one)/(NL-one);
vals.push_back(hi);
vals.push_back(lo);
//if (N==2) return hi-lo;
for (long long i=0; i<NL-one;i++) {
long long start,stop;
start=lo+i*expdist;
stop=start+expdist-1;
//stop=lo+((i+one)*(hi-lo))/(NL-one);
assert(start<=stop);
long long ans1,ans2;
MinMax(start,stop,&ans1,&ans2);
if (ans1!=-1) vals.push_back(ans1);
if (ans2!=-1) vals.push_back(ans2);
}
sort(vals.begin(),vals.end());
long long maxdist=0;
rep (i,0,vals.size()-1) maxdist=max(maxdist,vals[i+1]-vals[i]);
//assert(maxdist>=expdist);
return maxdist;
}
}
Compilation message
gap.cpp: In function 'long long int findGap(int, int)':
gap.cpp:58:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
3 ms |
376 KB |
Output is correct |
2 |
Correct |
3 ms |
384 KB |
Output is correct |
3 |
Correct |
3 ms |
432 KB |
Output is correct |
4 |
Correct |
3 ms |
460 KB |
Output is correct |
5 |
Correct |
2 ms |
504 KB |
Output is correct |
6 |
Correct |
3 ms |
536 KB |
Output is correct |
7 |
Correct |
3 ms |
536 KB |
Output is correct |
8 |
Correct |
3 ms |
588 KB |
Output is correct |
9 |
Correct |
2 ms |
588 KB |
Output is correct |
10 |
Correct |
2 ms |
612 KB |
Output is correct |
11 |
Correct |
4 ms |
612 KB |
Output is correct |
12 |
Correct |
3 ms |
612 KB |
Output is correct |
13 |
Correct |
4 ms |
612 KB |
Output is correct |
14 |
Correct |
4 ms |
612 KB |
Output is correct |
15 |
Correct |
4 ms |
612 KB |
Output is correct |
16 |
Correct |
22 ms |
1124 KB |
Output is correct |
17 |
Correct |
17 ms |
1128 KB |
Output is correct |
18 |
Correct |
25 ms |
1128 KB |
Output is correct |
19 |
Correct |
17 ms |
1128 KB |
Output is correct |
20 |
Correct |
17 ms |
1128 KB |
Output is correct |
21 |
Correct |
71 ms |
2524 KB |
Output is correct |
22 |
Correct |
68 ms |
2524 KB |
Output is correct |
23 |
Correct |
71 ms |
2536 KB |
Output is correct |
24 |
Correct |
65 ms |
2536 KB |
Output is correct |
25 |
Correct |
70 ms |
2536 KB |
Output is correct |
26 |
Correct |
64 ms |
2536 KB |
Output is correct |
27 |
Correct |
70 ms |
2536 KB |
Output is correct |
28 |
Correct |
72 ms |
2536 KB |
Output is correct |
29 |
Correct |
66 ms |
2560 KB |
Output is correct |
30 |
Correct |
55 ms |
2560 KB |
Output is correct |
31 |
Correct |
2 ms |
2560 KB |
Output is correct |
32 |
Correct |
3 ms |
2560 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
4 ms |
2560 KB |
Output is correct |
2 |
Correct |
2 ms |
2560 KB |
Output is correct |
3 |
Correct |
3 ms |
2560 KB |
Output is correct |
4 |
Correct |
3 ms |
2560 KB |
Output is correct |
5 |
Correct |
4 ms |
2560 KB |
Output is correct |
6 |
Correct |
0 ms |
2560 KB |
Output is correct |
7 |
Correct |
3 ms |
2560 KB |
Output is correct |
8 |
Correct |
3 ms |
2560 KB |
Output is correct |
9 |
Correct |
3 ms |
2560 KB |
Output is correct |
10 |
Correct |
3 ms |
2560 KB |
Output is correct |
11 |
Correct |
4 ms |
2560 KB |
Output is correct |
12 |
Correct |
5 ms |
2560 KB |
Output is correct |
13 |
Correct |
5 ms |
2560 KB |
Output is correct |
14 |
Correct |
4 ms |
2560 KB |
Output is correct |
15 |
Correct |
4 ms |
2560 KB |
Output is correct |
16 |
Correct |
24 ms |
2560 KB |
Output is correct |
17 |
Correct |
23 ms |
2560 KB |
Output is correct |
18 |
Correct |
25 ms |
2560 KB |
Output is correct |
19 |
Correct |
24 ms |
2560 KB |
Output is correct |
20 |
Correct |
13 ms |
2560 KB |
Output is correct |
21 |
Correct |
104 ms |
2748 KB |
Output is correct |
22 |
Correct |
81 ms |
2748 KB |
Output is correct |
23 |
Correct |
84 ms |
2748 KB |
Output is correct |
24 |
Correct |
111 ms |
2748 KB |
Output is correct |
25 |
Correct |
83 ms |
3552 KB |
Output is correct |
26 |
Correct |
81 ms |
3552 KB |
Output is correct |
27 |
Correct |
86 ms |
3552 KB |
Output is correct |
28 |
Correct |
92 ms |
3552 KB |
Output is correct |
29 |
Correct |
91 ms |
3552 KB |
Output is correct |
30 |
Correct |
44 ms |
3552 KB |
Output is correct |
31 |
Correct |
3 ms |
3552 KB |
Output is correct |
32 |
Correct |
3 ms |
3552 KB |
Output is correct |