zoukankan      html  css  js  c++  java
  • 【测试笔试】漂流船问题

    来自招商银行信用卡中心2019秋招IT笔试(测试开发方向第三批)

    时间限制:C/C++ 1秒,其他语言2秒

    空间限制:C/C++ 32M,其他语言64M

    公司组织团建活动,到某漂流圣地漂流,现有如下情况:
    员工各自体重不一,第 i 个人的体重为 people[i],每艘漂流船可以承载的最大重量为 limit。
    每艘船最多可同时载两人,但条件是这些人的重量之和最多为 limit。
    为节省开支,麻烦帮忙计算出载到每一个人所需的最小船只数(保证每个人都能被船载)。

    输入描述:
    第一行输入参与漂流的人员对应的体重数组,

    第二行输入漂流船承载的最大重量

    输出描述:
    所需最小船只数

    输入例子1:
    1 2
    3

    输出例子1:
    1

    思路是从大到小往船里装人,装不下就下一艘,先装大的后装小的。
     1 #include<cstdio>
     2 #include<iostream>
     3 #include<algorithm>
     4 using namespace std;
     5 
     6 int main()
     7 {
     8     int p[1000],l,pp,i=0,num,sum=0,ls=0,ppp=0;
     9     while(cin>>pp)
    10     {
    11         p[i++]=pp;
    12     }
    13     l=p[i-1];
    14     p[i-1]=0;
    15     num=i-1;
    16     sort(p,p+num-1);//默认从小到大
    17     for(int j=1;j<=num;j++)
    18     {
    19         if(ppp>=num)break;
    20     for(i=num-1;i>=0;i--)
    21     {
    22         if(ls==l)
    23             break;
    24         if(p[i]!=0&&p[i]+ls<=l)
    25         {
    26             ls+=p[i];
    27             p[i]=0;
    28             ppp++;
    29         }
    30     }
    31         sum++;
    32         ls=0;
    33     }
    34     printf("%d
    ",sum);
    35     return 0;
    36 }
  • 相关阅读:
    颓废ing
    Linux下PF_PACKET的使用(todo)
    TIPC协议(todo)
    TOP命令详解(todo)
    so查找顺序
    把lib打包到so中
    -Bsymbolic: 优先使用本地符号
    GitHub 上最火的 Python 开源项目zz
    __attribute__((weak)) zz
    kmalloc(zz)
  • 原文地址:https://www.cnblogs.com/Annetree/p/13172790.html
Copyright © 2011-2022 走看看