Submission #44068274
Source Code Expand
#include <bits/stdc++.h>
using namespace std;
const int N=2e5+5;
int a[N],b[N],c[N];
bool cmp(int x,int y){
return x>y;
}
priority_queue < int, vector<int>, greater<int> > q;
int main(){
int n,m;scanf ("%d%d",&n,&m);
int na=0,nb=0,nc=0;
for (int i=1;i<=n;i++){
int t,x;scanf ("%d%d",&t,&x);
if (t==0) a[++na]=x;
if (t==1) b[++nb]=x;
if (t==2) c[++nc]=x;
}
sort(a+1,a+na+1,cmp);
sort(b+1,b+nb+1,cmp);
sort(c+1,c+nc+1,cmp);
int sum=0;
long long now=0,ans=0;
for (int i=1;i<=min(m,na);i++) {
q.push(a[i]);
now+=a[i];
}
ans=now;
int j=1;
for (int i=1;i<=nc;i++){
if (q.size()==m-i+1){
now-=q.top();
q.pop();
}
while (c[i]--){
if (q.size()==m-i&&q.top()<b[j]){
now-=q.top();
q.pop();
now+=b[j];
q.push(b[j]);
j++;
}else if (q.size()<m-i){
now+=b[j];
q.push(b[j]);
j++;
}else break;
}
ans=max(ans,now);
}
printf ("%lld",ans);
return 0;
}
Submission Info
Submission Time
2023-07-29 22:09:42+0900
Task
F - Cans and Openers
User
wh_ZH
Language
C++ (GCC 9.2.1)
Score
500
Code Size
970 Byte
Status
AC
Exec Time
63 ms
Memory
5164 KiB
Compile Error
./Main.cpp: In function ‘int main()’:
./Main.cpp:30:15: warning: comparison of integer expressions of different signedness: ‘std::priority_queue<int, std::vector<int>, std::greater<int> >::size_type’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]
30 | if (q.size()==m-i+1){
| ~~~~~~~~^~~~~~~
./Main.cpp:35:16: warning: comparison of integer expressions of different signedness: ‘std::priority_queue<int, std::vector<int>, std::greater<int> >::size_type’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]
35 | if (q.size()==m-i&&q.top()<b[j]){
| ~~~~~~~~^~~~~
./Main.cpp:41:22: warning: comparison of integer expressions of different signedness: ‘std::priority_queue<int, std::vector<int>, std::greater<int> >::size_type’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]
41 | }else if (q.size()<m-i){
| ~~~~~~~~^~~~
./Main.cpp:21:6: warning: unused variable ‘sum’ [-Wunused-variable]
21 | int sum=0;
| ^~~
./Main.cpp:10:16: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
10 | int n,m;scanf ("%d%d",&n,&m);
| ~~~~~~^~~~~~~~~~~~~~
./Main.cpp:13:17: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
13 | int t,x;scanf ("%d%d",&t,&x);
| ~~~~~~^~~~~~~~~~~~~~
Judge Result
Set Name
Sample
All
Score / Max Score
0 / 0
500 / 500
Status
Set Name
Test Cases
Sample
sample00.txt, sample01.txt, sample02.txt
All
sample00.txt, sample01.txt, sample02.txt, testcase00.txt, testcase01.txt, testcase02.txt, testcase03.txt, testcase04.txt, testcase05.txt, testcase06.txt, testcase07.txt, testcase08.txt, testcase09.txt, testcase10.txt, testcase11.txt, testcase12.txt, testcase13.txt, testcase14.txt, testcase15.txt, testcase16.txt, testcase17.txt, testcase18.txt, testcase19.txt, testcase20.txt, testcase21.txt, testcase22.txt, testcase23.txt, testcase24.txt, testcase25.txt, testcase26.txt, testcase27.txt, testcase28.txt, testcase29.txt, testcase30.txt, testcase31.txt, testcase32.txt, testcase33.txt, testcase34.txt, testcase35.txt, testcase36.txt, testcase37.txt, testcase38.txt, testcase39.txt, testcase40.txt, testcase41.txt, testcase42.txt
Case Name
Status
Exec Time
Memory
sample00.txt
AC
5 ms
3588 KiB
sample01.txt
AC
2 ms
3676 KiB
sample02.txt
AC
3 ms
3720 KiB
testcase00.txt
AC
62 ms
4588 KiB
testcase01.txt
AC
56 ms
4304 KiB
testcase02.txt
AC
63 ms
4956 KiB
testcase03.txt
AC
54 ms
4380 KiB
testcase04.txt
AC
63 ms
4508 KiB
testcase05.txt
AC
59 ms
4580 KiB
testcase06.txt
AC
59 ms
4488 KiB
testcase07.txt
AC
56 ms
4560 KiB
testcase08.txt
AC
56 ms
4428 KiB
testcase09.txt
AC
59 ms
4664 KiB
testcase10.txt
AC
58 ms
4492 KiB
testcase11.txt
AC
57 ms
4572 KiB
testcase12.txt
AC
59 ms
4608 KiB
testcase13.txt
AC
54 ms
4436 KiB
testcase14.txt
AC
59 ms
4608 KiB
testcase15.txt
AC
56 ms
4616 KiB
testcase16.txt
AC
58 ms
4636 KiB
testcase17.txt
AC
58 ms
4612 KiB
testcase18.txt
AC
59 ms
4904 KiB
testcase19.txt
AC
52 ms
4532 KiB
testcase20.txt
AC
58 ms
4508 KiB
testcase21.txt
AC
57 ms
4476 KiB
testcase22.txt
AC
57 ms
4516 KiB
testcase23.txt
AC
57 ms
4916 KiB
testcase24.txt
AC
62 ms
4700 KiB
testcase25.txt
AC
53 ms
4480 KiB
testcase26.txt
AC
61 ms
4692 KiB
testcase27.txt
AC
54 ms
4464 KiB
testcase28.txt
AC
59 ms
4516 KiB
testcase29.txt
AC
54 ms
4536 KiB
testcase30.txt
AC
57 ms
4628 KiB
testcase31.txt
AC
55 ms
5084 KiB
testcase32.txt
AC
58 ms
4904 KiB
testcase33.txt
AC
57 ms
4956 KiB
testcase34.txt
AC
54 ms
4612 KiB
testcase35.txt
AC
54 ms
4540 KiB
testcase36.txt
AC
55 ms
4936 KiB
testcase37.txt
AC
57 ms
4904 KiB
testcase38.txt
AC
52 ms
4664 KiB
testcase39.txt
AC
53 ms
5164 KiB
testcase40.txt
AC
56 ms
4976 KiB
testcase41.txt
AC
59 ms
4512 KiB
testcase42.txt
AC
55 ms
4612 KiB