Submission #102458

#TimeUsernameProblemLanguageResultExecution timeMemory
102458Nicholas_PatrickGap (APIO16_gap)C++17
0 / 100
95 ms5884 KiB
#include "gap.h" #include <set> using namespace std; long long findGap(int t, int n){ set <long long> numbers; long long m, M; if(t==1){ m=0; M=1000000000000000000; while(true){ if(numbers.size()==n) break; MinMax(m, M, &m, &M); if(m==-1) break; numbers.insert(m); if(m==M) break; numbers.insert(M); m++;M--; } }else if(t==2){ for(int i = 0;i < n>>1;i ++){ m=(long double)i*1e18/(n>>1); if(i==(n>>1)-1) M=1000000000000000000; else M=(long double)(i+1)*1e18/(n>>1); while(true){ if(numbers.size()==n) break; MinMax(m, M, &m, &M); if(m==-1) break; numbers.insert(m); if(m==M) break; numbers.insert(M); m++;M--; } } } m=1000000000000000000; set <long long>::iterator it=numbers.begin(); M=*it; it++; while(it!=numbers.end()){ m=min(m, *it-M); M=*it; it++; } return m; }

Compilation message (stderr)

gap.cpp: In function 'long long int findGap(int, int)':
gap.cpp:12:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    if(numbers.size()==n)
       ~~~~~~~~~~~~~~^~~
gap.cpp:31:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     if(numbers.size()==n)
        ~~~~~~~~~~~~~~^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...