This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#include "gap.h"
using namespace std;
long long findGap(int T, int n)
{
switch (T)
{
case 1:
{
long long a, b, x, y, max_d = 0;
MinMax(0, 1e18, &a, &b);
size_t num_examined = 2;
if (num_examined == n)
max_d = max(max_d, b - a);
while (num_examined < n)
{
if (num_examined == n - 1)
{
MinMax(a + 1, b, &x, &y);
num_examined++;
}
else
{
MinMax(a + 1, b - 1, &x, &y);
num_examined += 2;
}
max_d = max(max_d, max(x - a, b - y));
a = x;
b = y;
if (num_examined == n)
max_d = max(max_d, y - x);
}
return max_d;
}
case 2:
{
long long a, b;
MinMax(0, 1e18, &a, &b);
long long const l = (b - a + n - 2) / (n - 1), x_max = b;
long long last = a, max_d = l;
for (size_t i = a; i < x_max; i += l + 1)
{
MinMax(i, i + l, &a, &b);
if (a != -1)
{
max_d = max(max_d, a - last);
last = b;
}
}
return max_d;
}
}
}
Compilation message (stderr)
gap.cpp: In function 'long long int findGap(int, int)':
gap.cpp:15:26: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
15 | if (num_examined == n)
| ~~~~~~~~~~~~~^~~~
gap.cpp:18:29: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
18 | while (num_examined < n)
| ~~~~~~~~~~~~~^~~
gap.cpp:20:30: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
20 | if (num_examined == n - 1)
| ~~~~~~~~~~~~~^~~~~~~~
gap.cpp:36:30: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
36 | if (num_examined == n)
| ~~~~~~~~~~~~~^~~~
gap.cpp:50:30: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'const long long int' [-Wsign-compare]
50 | for (size_t i = a; i < x_max; i += l + 1)
| ~~^~~~~~~
gap.cpp:62:1: warning: control reaches end of non-void function [-Wreturn-type]
62 | }
| ^
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |