제출 #1169917

#제출 시각아이디문제언어결과실행 시간메모리
1169917trandangquangGap (APIO16_gap)C++20
컴파일 에러
0 ms0 KiB
#include"gap.h"

#include<bits/stdc++.h>
using namespace std;

#define ll long long 

// void MinMax(ll s, ll t, ll &mn, ll &mx){
//     vector<int> a={1,3,5,7,9,12,15};
//     mn=*lower_bound(a.begin(),a.end(),s); 
//     mx=*(upper_bound(a.begin(),a.end(),t)-1);
//     if(mn>mx) mn=mx=-1;
// }

ll findGap(int t, int n){
    if(t==1){
        ll mi=1, mx=1e18;
        
        vector<ll> a;
        for(int i=0; i<(n+1)/2; ++i){
            ll l,r;
            MinMax(mi,mx,l,r);
            a.emplace_back(l); a.emplace_back(r);
            mi=l+1,mx=r-1;
        }
        sort(a.begin(),a.end());
        
        ll res=0;
        for(int i=1;i<a.size();++i){
            res=max(res,a[i]-a[i-1]);      
        }
        return res;
    }    
    else{
        ll mi=1,mx=1e18;
        MinMax(1,(ll)1e18,mi,mx);
        ll gap=(mx-mi+n-2)/(n-1), l=mi, res=0;
        for(ll i=mi; i<=mx; i+=gap+1){
            ll x,y;
            MinMax(i,i+gap,x,y);
            if(x!=-1){
                res=max(res,x-l);
                l=y;
            } 
        }     
        return res;
    }
}

// int main(){
//     cout<<findGap(2,7);
// }

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

gap.cpp: In function 'long long int findGap(int, int)':
gap.cpp:22:26: error: invalid conversion from 'long long int' to 'long long int*' [-fpermissive]
   22 |             MinMax(mi,mx,l,r);
      |                          ^
      |                          |
      |                          long long int
In file included from gap.cpp:1:
gap.h:1:35: note:   initializing argument 3 of 'void MinMax(long long int, long long int, long long int*, long long int*)'
    1 | void MinMax(long long, long long, long long*, long long*);
      |                                   ^~~~~~~~~~
gap.cpp:22:28: error: invalid conversion from 'long long int' to 'long long int*' [-fpermissive]
   22 |             MinMax(mi,mx,l,r);
      |                            ^
      |                            |
      |                            long long int
In file included from gap.cpp:1:
gap.h:1:47: note:   initializing argument 4 of 'void MinMax(long long int, long long int, long long int*, long long int*)'
    1 | void MinMax(long long, long long, long long*, long long*);
      |                                               ^~~~~~~~~~
gap.cpp:36:27: error: invalid conversion from 'long long int' to 'long long int*' [-fpermissive]
   36 |         MinMax(1,(ll)1e18,mi,mx);
      |                           ^~
      |                           |
      |                           long long int
In file included from gap.cpp:1:
gap.h:1:35: note:   initializing argument 3 of 'void MinMax(long long int, long long int, long long int*, long long int*)'
    1 | void MinMax(long long, long long, long long*, long long*);
      |                                   ^~~~~~~~~~
gap.cpp:36:30: error: invalid conversion from 'long long int' to 'long long int*' [-fpermissive]
   36 |         MinMax(1,(ll)1e18,mi,mx);
      |                              ^~
      |                              |
      |                              long long int
In file included from gap.cpp:1:
gap.h:1:47: note:   initializing argument 4 of 'void MinMax(long long int, long long int, long long int*, long long int*)'
    1 | void MinMax(long long, long long, long long*, long long*);
      |                                               ^~~~~~~~~~
gap.cpp:40:28: error: invalid conversion from 'long long int' to 'long long int*' [-fpermissive]
   40 |             MinMax(i,i+gap,x,y);
      |                            ^
      |                            |
      |                            long long int
In file included from gap.cpp:1:
gap.h:1:35: note:   initializing argument 3 of 'void MinMax(long long int, long long int, long long int*, long long int*)'
    1 | void MinMax(long long, long long, long long*, long long*);
      |                                   ^~~~~~~~~~
gap.cpp:40:30: error: invalid conversion from 'long long int' to 'long long int*' [-fpermissive]
   40 |             MinMax(i,i+gap,x,y);
      |                              ^
      |                              |
      |                              long long int
In file included from gap.cpp:1:
gap.h:1:47: note:   initializing argument 4 of 'void MinMax(long long int, long long int, long long int*, long long int*)'
    1 | void MinMax(long long, long long, long long*, long long*);
      |                                               ^~~~~~~~~~