B. Taxi1100 / 贪心
Posted 幽殇默
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了B. Taxi1100 / 贪心相关的知识,希望对你有一定的参考价值。
https://codeforces.com/problemset/problem/158/B
1-3 2-2 2-1-1
尽量多配对
#include<bits/stdc++.h>
using namespace std;
int a[10],n,x;
int main(void)
{
cin>>n;
for(int i=0;i<n;i++) cin>>x,a[x]++;
int ans=a[4];
while(a[3]&&a[1]) ans++,a[3]--,a[1]--;
if(a[3]>0) ans+=a[3];
while(a[2]>0&&a[1]>0) ans++,a[2]--,a[1]-=2;
if(a[2]>0)
{
ans+=a[2]/2;
if(a[2]%2) ans++;
}
if(a[1]>0)
{
ans+=a[1]/4;
if(a[1]>0&&a[1]%4) ans++;
}
cout<<ans<<endl;
return 0;
}
以上是关于B. Taxi1100 / 贪心的主要内容,如果未能解决你的问题,请参考以下文章
CF 1100E Andrew and Taxi(二分答案)
Andrew and Taxi CodeForces - 1100E (思维,拓扑)
codeforces 1100E-Andrew and Taxi