Submission #888319

# Submission time Handle Problem Language Result Execution time Memory
888319 2023-12-17T00:39:20 Z 12345678 Gap (APIO16_gap) C++17
30 / 100
2000 ms 4180 KB
#include "gap.h"

#include <bits/stdc++.h>

using namespace std;

#define ll long long

long long findGap(int T, int N)
{
    if (T==1)
    {
        ll x=0, y=1e18, a, b, idx=0, mx=0;
        vector<ll> v;
        while (v.size()<N)
        {
            MinMax(x, y, &a, &b);
            if (a==b) v.push_back(a);
            else v.push_back(a), v.push_back(b);
            x=a+1; y=b-1;
        }
        sort(v.begin(), v.end());
        for (int i=1; i<v.size(); i++) mx=max(mx, v[i]-v[i-1]);
        return mx;
    }
    else
    {
        ll x=0, y=1e18, mn, mx, mmn, mmx, res=0;
        set<ll> s;
        MinMax(x, y, &mmn, &mmx);
        if (mmx-mmn+1<N+1) return 1;
        ll gap=(mmx-mmn+1)/(N+1);
        for (int i=mmn; i<=mmx; i+=gap)
        {
            MinMax(i, i+gap-1, &mn, &mx);
            if (mn==-1) continue;
            s.insert(mn);
            if (mn!=mx) s.insert(mx);
        }
        for (auto itr=s.begin(); next(itr)!=s.end(); itr=next(itr)) res=max(res, *next(itr)-*itr);
        return res;
    }
}

Compilation message

gap.cpp: In function 'long long int findGap(int, int)':
gap.cpp:15:24: warning: comparison of integer expressions of different signedness: 'std::vector<long long int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   15 |         while (v.size()<N)
      |                ~~~~~~~~^~
gap.cpp:23:24: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   23 |         for (int i=1; i<v.size(); i++) mx=max(mx, v[i]-v[i-1]);
      |                       ~^~~~~~~~~
gap.cpp:13:31: warning: unused variable 'idx' [-Wunused-variable]
   13 |         ll x=0, y=1e18, a, b, idx=0, mx=0;
      |                               ^~~
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 2392 KB Output is correct
3 Correct 0 ms 2392 KB Output is correct
4 Correct 0 ms 2392 KB Output is correct
5 Correct 0 ms 2392 KB Output is correct
6 Correct 0 ms 2392 KB Output is correct
7 Correct 0 ms 2392 KB Output is correct
8 Correct 1 ms 2392 KB Output is correct
9 Correct 0 ms 2392 KB Output is correct
10 Correct 0 ms 2392 KB Output is correct
11 Correct 1 ms 2392 KB Output is correct
12 Correct 1 ms 2452 KB Output is correct
13 Correct 1 ms 2392 KB Output is correct
14 Correct 1 ms 2392 KB Output is correct
15 Correct 1 ms 2392 KB Output is correct
16 Correct 8 ms 3008 KB Output is correct
17 Correct 8 ms 2848 KB Output is correct
18 Correct 8 ms 3008 KB Output is correct
19 Correct 8 ms 2904 KB Output is correct
20 Correct 7 ms 2832 KB Output is correct
21 Correct 31 ms 4000 KB Output is correct
22 Correct 36 ms 4180 KB Output is correct
23 Correct 32 ms 3836 KB Output is correct
24 Correct 33 ms 3992 KB Output is correct
25 Correct 28 ms 3984 KB Output is correct
26 Correct 31 ms 3996 KB Output is correct
27 Correct 31 ms 4000 KB Output is correct
28 Correct 31 ms 3988 KB Output is correct
29 Correct 31 ms 3984 KB Output is correct
30 Correct 26 ms 3988 KB Output is correct
31 Correct 0 ms 2392 KB Output is correct
32 Correct 0 ms 2392 KB Output is correct
# Verdict Execution time Memory Grader output
1 Execution timed out 3065 ms 2392 KB Time limit exceeded
2 Execution timed out 3009 ms 2392 KB Time limit exceeded
3 Execution timed out 3054 ms 2392 KB Time limit exceeded
4 Execution timed out 3051 ms 2392 KB Time limit exceeded
5 Partially correct 0 ms 2388 KB Partially correct
6 Execution timed out 3045 ms 2392 KB Time limit exceeded
7 Execution timed out 3035 ms 2392 KB Time limit exceeded
8 Execution timed out 3013 ms 2392 KB Time limit exceeded
9 Execution timed out 3027 ms 2644 KB Time limit exceeded
10 Partially correct 0 ms 2392 KB Partially correct
11 Execution timed out 3057 ms 2392 KB Time limit exceeded
12 Execution timed out 3061 ms 2392 KB Time limit exceeded
13 Execution timed out 3031 ms 2392 KB Time limit exceeded
14 Execution timed out 3064 ms 2392 KB Time limit exceeded
15 Execution timed out 3050 ms 2392 KB Time limit exceeded
16 Execution timed out 3027 ms 2588 KB Time limit exceeded
17 Execution timed out 3094 ms 2584 KB Time limit exceeded
18 Execution timed out 3024 ms 2584 KB Time limit exceeded
19 Execution timed out 3075 ms 2584 KB Time limit exceeded
20 Partially correct 5 ms 2568 KB Partially correct
21 Execution timed out 3074 ms 2952 KB Time limit exceeded
22 Execution timed out 3054 ms 2848 KB Time limit exceeded
23 Execution timed out 3068 ms 2852 KB Time limit exceeded
24 Execution timed out 3042 ms 2852 KB Time limit exceeded
25 Execution timed out 3032 ms 2844 KB Time limit exceeded
26 Execution timed out 3070 ms 2968 KB Time limit exceeded
27 Execution timed out 3055 ms 2688 KB Time limit exceeded
28 Execution timed out 3028 ms 2848 KB Time limit exceeded
29 Execution timed out 3032 ms 2852 KB Time limit exceeded
30 Partially correct 25 ms 3604 KB Partially correct
31 Execution timed out 3102 ms 2392 KB Time limit exceeded
32 Execution timed out 3054 ms 2392 KB Time limit exceeded