Submission #1693361
Source Code Expand
#include<cstdio>
#include<queue>
#include<algorithm>
using namespace std;
inline char tc(void){
static char fl[10000],*A=fl,*B=fl;
return A==B&&(B=(A=fl)+fread(fl,1,10000,stdin),A==B)?EOF:*A++;
}
inline int read(void){
int a=0;static char c;
while((c=tc())<'0'||c>'9');
while(c>='0'&&c<='9')a=a*10+c-'0',c=tc();
return a;
}
struct Y{
int a,b,p;
bool operator <(const Y&a)const{
return p>a.p;
}
}k[100005];
int x,y,z,n,sum;
long long ans=-1e18,ans1,ans2,c;
char b[100005];
priority_queue<int,vector<int>,greater<int> >sum2;
priority_queue<pair<int,int>,vector<pair<int,int> >,less<pair<int,int> > >sum1;
int main(void){
register int i,wjnsb;
x=read(),y=read(),z=read(),n=x+y+z;
for(i=1;i<=n;++i){
k[i].a=read(),k[i].b=read(),wjnsb=read(),k[i].a-=wjnsb,k[i].b-=wjnsb,
k[i].p=k[i].a-k[i].b,c+=wjnsb;
}
sort(k+1,k+n+1);
for(i=1;i<=x;++i)
sum2.push(k[i].a),ans1+=k[i].a;
for(i=x+1;i<=n;++i)
sum1.push(make_pair(k[i].b,i));
for(i=1;i<=y;++i)
b[sum1.top().second]=1,ans2+=sum1.top().first,sum1.pop();
n-=y;
ans=max(ans1+ans2,ans);
for(i=x+1;i<=n;++i){
sum2.push(k[i].a),ans1+=k[i].a,ans1-=sum2.top(),sum2.pop();
if(b[i]==1){
ans2-=k[i].b;
while(b[sum1.top().second])
sum1.pop();
b[sum1.top().second]=1,ans2+=sum1.top().first,sum1.pop();
}
b[i]=1,ans=max(ans1+ans2,ans);
}
printf("%lld",ans+c);
return 0;
}
Submission Info
Submission Time |
|
Task |
C - Coins |
User |
Axcosin |
Language |
C++14 (GCC 5.4.1) |
Score |
800 |
Code Size |
1407 Byte |
Status |
AC |
Exec Time |
27 ms |
Memory |
2748 KB |
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
800 / 800 |
Status |
|
|
Set Name |
Test Cases |
Sample |
sample_01.txt, sample_02.txt, sample_03.txt |
All |
sample_01.txt, sample_02.txt, sample_03.txt, sample_01.txt, sample_02.txt, sample_03.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_16.txt, subtask_1_17.txt, subtask_1_18.txt, subtask_1_19.txt, subtask_1_20.txt, subtask_1_21.txt, subtask_1_22.txt, subtask_1_23.txt, subtask_1_24.txt, subtask_1_25.txt, subtask_1_26.txt, subtask_1_27.txt, subtask_1_28.txt, subtask_1_29.txt |
Case Name |
Status |
Exec Time |
Memory |
sample_01.txt |
AC |
1 ms |
256 KB |
sample_02.txt |
AC |
1 ms |
256 KB |
sample_03.txt |
AC |
1 ms |
256 KB |
subtask_1_01.txt |
AC |
1 ms |
256 KB |
subtask_1_02.txt |
AC |
5 ms |
896 KB |
subtask_1_03.txt |
AC |
5 ms |
1056 KB |
subtask_1_04.txt |
AC |
11 ms |
1408 KB |
subtask_1_05.txt |
AC |
15 ms |
1660 KB |
subtask_1_06.txt |
AC |
19 ms |
1916 KB |
subtask_1_07.txt |
AC |
5 ms |
768 KB |
subtask_1_08.txt |
AC |
23 ms |
2444 KB |
subtask_1_09.txt |
AC |
4 ms |
768 KB |
subtask_1_10.txt |
AC |
16 ms |
1916 KB |
subtask_1_11.txt |
AC |
19 ms |
2168 KB |
subtask_1_12.txt |
AC |
12 ms |
2300 KB |
subtask_1_13.txt |
AC |
16 ms |
2044 KB |
subtask_1_14.txt |
AC |
26 ms |
2680 KB |
subtask_1_15.txt |
AC |
25 ms |
2680 KB |
subtask_1_16.txt |
AC |
22 ms |
2572 KB |
subtask_1_17.txt |
AC |
22 ms |
2300 KB |
subtask_1_18.txt |
AC |
21 ms |
2680 KB |
subtask_1_19.txt |
AC |
27 ms |
2680 KB |
subtask_1_20.txt |
AC |
24 ms |
2680 KB |
subtask_1_21.txt |
AC |
12 ms |
2296 KB |
subtask_1_22.txt |
AC |
20 ms |
2172 KB |
subtask_1_23.txt |
AC |
21 ms |
2300 KB |
subtask_1_24.txt |
AC |
25 ms |
2680 KB |
subtask_1_25.txt |
AC |
21 ms |
2560 KB |
subtask_1_26.txt |
AC |
19 ms |
2168 KB |
subtask_1_27.txt |
AC |
20 ms |
2296 KB |
subtask_1_28.txt |
AC |
27 ms |
2748 KB |
subtask_1_29.txt |
AC |
1 ms |
256 KB |