zoukankan      html  css  js  c++  java
  • cf158B(水题)

    题意:1辆出租车可以坐4人,已知k组人每组ki(ki<=4)人去坐车,要求同组人坐同一辆车,求最少需多少辆车。。

    4人组的单独算,1人组和3人组一起,如1多余再将1和2匹配即可。。。。

    代码如下:

     1 #include <iostream>
     2 #include <string.h>
     3 #include <math.h>
     4 using namespace std;
     5 
     6 int main(void)
     7 {
     8     int n, ans=0;
     9     int a[5];
    10     cin >> n;
    11     memset(a, 0, sizeof(a));
    12     while(n--)
    13     {
    14         int x;
    15         cin >> x;
    16         a[x]++;
    17     }
    18     if(a[1]>a[3])
    19     {
    20         ans+=a[3];
    21         a[1]-=a[3];
    22         if(a[2]>a[1])
    23         {
    24             ans+=floor(a[1]*1.0/2+0.5);
    25             a[2]-=floor(a[1]*1.0/2+0.5);
    26             ans+=floor(a[2]*1.0/2+0.75);
    27         }
    28         else
    29         {
    30             ans+=a[2];
    31             a[1]-=2*a[2];
    32             ans+=floor(a[1]*1.0/4+0.75);
    33         }
    34         ans+=a[4];
    35     }
    36     else
    37     {
    38         ans+=a[1];
    39         a[3]-=a[1];
    40         ans+=a[3];
    41         ans+=a[4];
    42         ans+=floor(a[2]*1.0/2+0.75);
    43     }
    44     cout << ans << endl;
    45     return 0;
    46 }
    我就是我,颜色不一样的烟火 --- geloutingyu
  • 相关阅读:
    Spring5.0源码导入IDEA(一)
    适配器模式
    3.6常见查询示例
    3.5在批处理模式下使用mysql
    3.4获取有关数据库和表的信息
    3.3.4.9使用多个表
    3.3.4.8计数行
    3.3.4.7模式匹配
    3.3.4.6使用NULL值
    3.3.4.5日期计算
  • 原文地址:https://www.cnblogs.com/geloutingyu/p/5734483.html
Copyright © 2011-2022 走看看