제출 #485156

#제출 시각아이디문제언어결과실행 시간메모리
485156MilosMilutinovicGap (APIO16_gap)C++14
컴파일 에러
0 ms0 KiB
#include "gap.h" #include <bits/stdc++.h> #define ff(i,a,b) for(int i = (a); (i) <= (b); ++(i)) #define fb(i,a,b) for(int i = (a); (i) >= (b); --(i)) #define pb push_back #define ll long long using namespace std; ll findGap(int t, int n){ if(t == 1){ vector<ll> niz; ll l,r; MinMax(0, 1e18, l, r); niz.pb(l); niz.pb(r); while(l != -1 && l != r){ MinMax(l + 1, r - 1, l, r); niz.pb(l); if(l != r)niz.pb(r); } sort(niz.begin(), niz.end()); ll ans = 0; ff(i,0,n-1)ans = max(ans, niz[i + 1] - niz[i]); return ans; } else{ vector<ll> niz; ll l,r; MinMax(0, 1e18, l, r); if(n == 2)return r - l; niz.pb(l); niz.pb(r); ll d = (r - l + n - 3) / (n - 2); for(ll i = l + 1; i < r; i += d){ ll x,y; MinMax(i, i + d - 1, x, y); if(x != -1)niz.pb(x); if(y != -1 && x != y)niz.pb(y); } sort(niz.begin(), niz.end()); niz.erase(unique(niz.begin(), niz.end()), niz.end()); ll ans = 0; ff(i,0,niz.size()-1)ans = max(ans, niz[i + 1] - niz[i]); return ans; } }

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

gap.cpp: In function 'long long int findGap(int, int)':
gap.cpp:14:19: error: invalid conversion from 'long long int' to 'long long int*' [-fpermissive]
   14 |   MinMax(0, 1e18, 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:14:22: error: invalid conversion from 'long long int' to 'long long int*' [-fpermissive]
   14 |   MinMax(0, 1e18, 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:18:25: error: invalid conversion from 'long long int' to 'long long int*' [-fpermissive]
   18 |    MinMax(l + 1, r - 1, 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:18:28: error: invalid conversion from 'long long int' to 'long long int*' [-fpermissive]
   18 |    MinMax(l + 1, r - 1, 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:30:19: error: invalid conversion from 'long long int' to 'long long int*' [-fpermissive]
   30 |   MinMax(0, 1e18, 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:30:22: error: invalid conversion from 'long long int' to 'long long int*' [-fpermissive]
   30 |   MinMax(0, 1e18, 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:37:25: error: invalid conversion from 'long long int' to 'long long int*' [-fpermissive]
   37 |    MinMax(i, i + d - 1, 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:37:28: error: invalid conversion from 'long long int' to 'long long int*' [-fpermissive]
   37 |    MinMax(i, i + d - 1, 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*);
      |                                               ^~~~~~~~~~
gap.cpp:3:40: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    3 | #define ff(i,a,b) for(int i = (a); (i) <= (b); ++(i))
      |                                    ~~~~^~~~~~
gap.cpp:44:3: note: in expansion of macro 'ff'
   44 |   ff(i,0,niz.size()-1)ans = max(ans, niz[i + 1] - niz[i]);
      |   ^~