제출 #560979

#제출 시각아이디문제언어결과실행 시간메모리
560979HuyGap (APIO16_gap)C++17
100 / 100
59 ms1872 KiB
#include "gap.h"
#include<bits/stdc++.h>
//#define int long long
#define pii pair<int,int>
#define fi first
#define se second
/*#pragma GCC target ("avx2")
#pragma GCC optimization ("O3")
#pragma GCC optimization ("unroll-loops")
#pragma GCC optimize("Ofast")
#pragma GCC target("avx,avx2,fma")*/
using namespace std;
using ll = long long;
using ull = unsigned long long;
using ldb = long double;
const int N = (int)5e5;
const int maxN = (int)5e5 + 5;
const int mod = 1e9 + 7;
//const int mod = 998244353;
const ll infty = 1e18;
const ll logn = 18;
const int base = 311;
const int Block_size = 500;
const int ep = 'a';

int cu[] = {0,0,1,-1};
int cv[] = {-1,1,0,0};

int du[] = {-1,-1,+1,1};
int dv[] = {-1,+1,-1,1};

int cled[] = {6,2,5,5,4,5,6,3,7,6};

void InputFile()
{
    freopen(".inp","r",stdin);
    freopen(".out","w",stdout);
    //freopen("test.out","r",stdin);
}

void FastInput()
{
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
}

/*void MinMax(int L,int R,int x,int y)
{
    return;
}*/
ll a[maxN];
ll findGap(int T, int n)
{
    if(T == 1)
    {
        ll l = 0, r = 1e18, a[n + 1];
        for (int i = 1; i <= n && (n - i + 1) >= i; i++)
        {
            MinMax(l, r, &a[i], &a[n - i + 1]);
            l = a[i] + 1;
            r = a[n - i + 1] - 1;
        }
        ll ans = 0;
        for (int i = 2; i <= n; i++)
        {
            ans = max(ans, a[i] - a[i - 1]);
        }
        return ans;
    }
    ll res = 0;
    ll mini,maxi;
    MinMax(0,infty, &mini, &maxi);
    ll pre = mini;
    ll h = (maxi - mini + n - 2) / (n - 1);
    ll now = mini + 1;
    while(true)
    {
        ll p, q;
        MinMax(now, now + h - 1, &p, &q);
        res = max(res, p - pre);
        pre = max(pre, q);
        now += h;
        if(q == maxi) break;
    }
    return res;
}

/*void Read()
{

}

void Solve()
{

}

void Debug()
{
    //Main_sub();
    //Naive();
}


signed main()
{
    FastInput();
    //InputFile();
    //int sub_type;
    //cin >> sub_type;
    //Sieve();
    int test;
    //cin >> test;
    test = 1;
    while(test--)
        //for(int prc = 1; prc <= test; prc++)
    {
        Read();
        Solve();
        //Debug();
    }
}*/

컴파일 시 표준 에러 (stderr) 메시지

gap.cpp: In function 'void InputFile()':
gap.cpp:36:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   36 |     freopen(".inp","r",stdin);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~
gap.cpp:37:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   37 |     freopen(".out","w",stdout);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...