好激动啊,Day2竟然AK了!

Day2T1养宠物

Description
badgers是可爱的动物,Smart想拥有一些。宠物店提供N个badgers,编号为1..N,Smart都很喜欢,所以他想拥有得越多越好。初始,每个badger每天需要固定量的食物。但是,如果它看见别的badger也在吃东西,它会觉得饥饿而吃更多的东西。一个badger每多一个同食者需要增加一个固定量的食物。
h[i]表示第i个badger单独进食所需要的食物。g[i]表示第i个badger在每多一个同食者的情况下增加的食物量。Smart每天最多可以供应totalFood量的食物,那么他最多可以养多少只badgers。
注意:Smart是把badgers放在一起养,所以每一只badger都能看到其他badger吃东西。

Input
第一行两个整数N和totalFood。
第二行N个整数,第i个为h[i]。
第三行N个整数,第i个为g[i]。

Output
一个整数,表示Smart最多可以养多少只badgers。

Sample Input
#1
3 7
1 2 3
2 2 1

#2
4 19
5 2 1 5
0 2 4 1

Sample Output
#12

#2
3
Hint

30%的数据:N≤10;
100%的数据:1≤N≤50,1≤h[i]≤1000,0≤g[i]≤1000,1≤totalFood≤1000000。

【题解】
    这题首先想到的是暴力。
    打一张表出来,其中f[i][j]是第i个动物在和j个人供餐时的食量。

将数量从高到低枚举,按照当前数量i的饭量排升序之后选前i个。看看是否小于等于totalFood。如果是,输出并退出,否则继续枚举下一个时间。

【源代码】

 #include <cstdio>
#include <algorithm>
using namespace std;
const int S=;
int n,m,s;
struct info
{
int h,g;
}a[S];
bool cmp(info a,info b)
{
return a.h<b.h;
}
int main()
{
scanf("%d%d",&n,&m);
for (int i=;i<=n;i++)
scanf("%d",&a[i].h);
for (int i=;i<=n;i++)
{
scanf("%d",&a[i].g);
a[i].h+=a[i].g*(n-);
}
for (int i=n;i;i--)
{
sort(a+,a++n,cmp);s=;
for (int j=;j<=i;j++)
s+=a[j].h;
if (s<=m)
{
printf("%d",i);
return ;
}
for (int j=;j<=n;j++)
a[j].h-=a[j].g;
}
puts("");
return ;
}

(20180325)

芜湖市2018市队选拔Day2T1的更多相关文章

  1. [总结]HNOI2015省队选拔

    // 此博文为迁移而来,写于2015年4月21日,不代表本人现在的观点与看法.原始地址:http://blog.sina.com.cn/s/blog_6022c4720102vy9t.html 这次省 ...

  2. 【欧拉回路+最小生成树】SD开车@山东2018省队一轮集训day1

    目录 [欧拉回路+最小生成树]SD开车@山东2018省队一轮集训day1 PROBLEM 题目描述 输入 输出 样例输入 样例输出 提示 SOLUTION CODE [欧拉回路+最小生成树]SD开车@ ...

  3. zju 校队选拔 被虐记

    选拔已经开始了三天才想起来写游记 QAQ.. 7.12 弱弱的Sky_miner来到了ZJU,过程中被热成狗... 然后见到了无数大二大三的大佬们,过程中被热成狗... 后来听靖哥哥说集训的注意事项, ...

  4. 浙江省队选拔 ZJOI2015 (Round 1) 解题报告

    最近莫名其妙地喜欢上了用这种格式写各省省选的全套题解= = 今年浙江省选的出题人是算法竞赛界传说级人物陈立杰,看样子他的出题风格很有特点……ABC三题难度是严格递减的,感觉如果在做第一题的时候被卡住的 ...

  5. 河南省队选拔 HAOI2015 解题报告

      其实省选在四天前就已经结束了,但由于题目难度略大我到今天上午才补完所有题目……(捂脸逃)考场上很幸运,打完了所有我会写的部分分,最后Round1的110分 + Round2的70分,勉强算是没有被 ...

  6. 重庆市队选拔 CQOI2015 解题报告

    文章链接:http://www.cnblogs.com/Asm-Definer/p/4434601.html 题目链接:http://pan.baidu.com/s/1mgxIKli 官方数据:htt ...

  7. [2018湖南省队集训] 6.24 T1 marshland

    题面在这里! 一开始感觉像一个类似二分图的最小割,于是成功跑偏2333333 很容易发现一个关键性质,'L'的两个角落在的偶数格 的行(或者列)的奇偶性一定不同.... 于是我们再把偶数格按照行(或者 ...

  8. [2018湖南省队集训] 6.28 T3 simulate

    这道模拟题出的我毫无脾气2333 最重要的是先要发现操作顺序不影响最后的答案,也就是每次随便挑一个>=2的数进行操作最后总是可以得到同样的数列. (这个还不太难想qwq) 但是最骚的是接下来的模 ...

  9. [2018湖南省队集训] 6.28 T2 color

    毒瘤计数题2333,(小声)k其实可以出到1e9,不过这样求组合数的时候就要记1000种数的1~1000次下降幂(用到的组合数中第一维在1e9级别的只有1000种左右,第二维都是<=1000), ...

随机推荐

  1. centos 安装mysql冲突解决方法

    [root@centos-50 servers]# rpm -ivh mysql-server-5.5.33-1.linux2.6.x86_64.rpm Preparing... ########## ...

  2. PHP disk_free_space() 函数

    定义和用法 disk_free_space() 函数返回指定目录的可用空间,以字节为单位. 语法 disk_free_space(directory) 参数 描述 directory 必需.规定要检查 ...

  3. linux IPC socket(3)server简单写法

    写server的一些流程总结 一.向内核申请一个socket TCP形式 sock_fd = socket(AF_INET, SOCK_STREAM, ); UDP形式 sfd = socket(AF ...

  4. 洛谷 P1271 聚会的快乐(树状dp)

    题目描述 你要组织一个由你公司的人参加的聚会.你希望聚会非常愉快,尽可能多地找些有趣的热闹.但是劝你不要同时邀请某个人和他的上司,因为这可能带来争吵.给定N个人(姓名,他幽默的系数,以及他上司的名字) ...

  5. axios拦截设置和错误处理

    目前想出的处理接口请求进行全局错误提示 的最佳方案,axios整体配置如下 1.基于axiso.interceptors进行响应拦截: 主要负责全局提示错误 axios.interceptors.re ...

  6. MySQL图形化管理工具之Navicat安装以及激活

    软件以及激活包下载地址 1. 安装navicat 双击navicat_trial_11.1.20.0.1449226634.exe,一路下一步安装(记住安装目录) 2. 激活 双击PatchNavic ...

  7. 【Flutter学习】基本组件之TabBar顶部导航

    一,概述 TabBar,是材料设计(Material design)中很常用的一种横向标签页.在Android原生开发中,我们常用ViewPage或者一些常用的标签页开源库,来实现并行界面的横向滑动展 ...

  8. 【2019 Multi-University Training Contest 1】

    01:https://www.cnblogs.com/myx12345/p/11543105.html 02:https://www.cnblogs.com/myx12345/p/11439320.h ...

  9. Python每日一题 005

    任一个英文的纯文本文件,统计其中的单词出现的个数. 代码 # coding:utf-8 import re def get_word(filename): fp=open(filename," ...

  10. windows系统下tomcat启动startup.bat一闪而过

    遇到运行startup.bat后,一个窗口一闪而过的问题 tomcat在启动时,会读取环境变量的信息,需要一个CATALINA_HOME 与JAVA_HOME的信息,CATALINA_HOME即tom ...