제출 #617982

#제출 시각아이디문제언어결과실행 시간메모리
617982AbdelmagedNourGap (APIO16_gap)C++17
100 / 100
55 ms2248 KiB
#include<bits/stdc++.h> using namespace std; #include "gap.h" long long findGap(int T, int N){ if(T==1){ long long l=1,r=1e18,res=0; long long mn,mx; vector<long long>v; while(l<=r&&v.size()<N){ MinMax(l,r,&mn,&mx); v.push_back(mn); if(mx!=mn)v.push_back(mx); l=mn+1; r=mx-1; } sort(v.begin(),v.end()); for(int i=1;i<N;i++)res=max(res,v[i]-v[i-1]); return res; }else{ long long l=1,r=1e18,res=0,mn,mx,x,y,i; MinMax(l,r,&mn,&mx); long long bsz=(mx-mn+N-2)/(N-1); res=bsz;l=mn; for(i=mn;i+bsz<mx;i+=bsz+1){ MinMax(i,i+bsz,&x,&y); if(~x){ res=max(res,x-l); l=y; } } MinMax(i,mx,&x,&y); if(~x)res=max(res,x-l); return res; } return 0; }

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

gap.cpp: In function 'long long int findGap(int, int)':
gap.cpp:9:29: warning: comparison of integer expressions of different signedness: 'std::vector<long long int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
    9 |         while(l<=r&&v.size()<N){
      |                     ~~~~~~~~^~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...