제출 #1017842

#제출 시각아이디문제언어결과실행 시간메모리
1017842vivkostov휴가 (IOI14_holiday)C++14
0 / 100
5053 ms1752 KiB
#include<bits/stdc++.h> //#define endl '\n' using namespace std; void speed() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); } struct cell { int st; bool operator<(const cell&a)const { return st>a.st; } }; priority_queue<cell>q; int n,a[200005],k,st,sum; void fil(int h) { cell g; for(int i=h;i<=st;i++) { sum+=a[i]; g.st=a[i]; q.push(g); } } void read() { cin>>n>>k>>st; cell h; for(int i=1;i<=n;i++) { cin>>a[i]; } int p=k,otg=0; for(int i=1;i<=st;i++) { for(int j=st;j<=n;j++) { p-=min(st-i,j-st); p-=j-i; if(p<=0)break; if(j==st) { fil(i); } else { sum+=a[j]; h.st=a[j]; q.push(h); } while(p<q.size()) { //cout<<q.top().st<<" "<<i<<" "<<j<<" "<<q.size()<<endl; sum-=q.top().st; q.pop(); } p=k; otg=max(otg,sum); } sum=0; while(!q.empty())q.pop(); } cout<<otg<<endl; } long long int findMaxAttraction(int N, int start, int d, int attraction[]) { n=N; st=start; k=d; cell h; for(int i=1;i<=n;i++) { a[i]=attraction[i-1]; } int p=k,otg=0; for(int i=1;i<=st;i++) { for(int j=st;j<=n;j++) { p-=min(st-i,j-st); p-=j-i; if(p<=0)break; if(j==st) { fil(i); } else { sum+=a[j]; h.st=a[j]; q.push(h); } while(p<q.size()) { sum-=q.top().st; q.pop(); } p=k; otg=max(otg,sum); } sum=0; while(!q.empty())q.pop(); } return otg; } /*int main() { speed(); read(); return 0; } */

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

holiday.cpp: In function 'void read()':
holiday.cpp:56:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::priority_queue<cell>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   56 |             while(p<q.size())
      |                   ~^~~~~~~~~
holiday.cpp: In function 'long long int findMaxAttraction(int, int, int, int*)':
holiday.cpp:98:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::priority_queue<cell>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   98 |             while(p<q.size())
      |                   ~^~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...