WZK的减肥计划
WZK 的减肥计划(plan.cpp/ plan.in/ plan.out)
问题描述:
WZK 发现他的体重正迅猛的上升着,对此他感到非常焦虑,想要制定出一套完美的减肥计划。
于是 WZK 翻阅资料,查到了各种食品所含的卡路里和价格,并且千辛万苦的测出了自己一天所需的卡路里。
现在有 n 种食品可供 WZK 选择,每种物品都有给定的价格,卡路里和拥有数量,你的任务就是要选出一些食品使得总卡路里大于消耗量且最小,如果有多种组合满足条件,则取价格最小的。
输入格式:
第一行为两个整数 n(0<n<=100), k(0<k<=10^5)分别表示物品个数和一天消耗的最少卡路里。
接下来 n 行每行 3 个整数, costi, mi, cali( 0< costi,cali<10^6,1<=mi<=100)分别表示价格,数量和所含卡路里。
输入数据保证合法、有解。
输出格式:
满足条件的总卡路里和总价格,中间用一个空格隔开。
注意:保证答案的总卡路里小于 10^5,总价格小于 10^8。
输入样例:
5 10
10 2 6
5 1 9
6 1 6
9 1 6
5 1 9
输出样例:
12 15
写循环的时候一直有不祥的预感
但是因为这次题目都还蛮简单所以就非常笨蛋地安慰了自己
不知道出于什么样的心理也没检查剩下的时间就在题目的pdf文件上乱画画
然后果然这题就差点爆零了呢...
反省!
下次绝对认真画
重写的时候发现其实是二进制分割物品写错了...
一直担心的循环反而神奇地没写错
哈哈哈???
而且倒序循环的时候范围又开大了所以还会超时
可能等输入完数据统计最大卡路里再来循环会优化一些
不过我就懒得写了
^^
#include<bits/stdc++.h>
using namespace std; int n , k , a , b , c , all;
int minn = , ans = ;
int f[] ; int read(){
char c ;
int sign = ;
while((c = getchar())<''|| c >'')
if(c=='-') sign = - ;
int Ans = c - '' ;
while((c = getchar())>=''&& c<='')
Ans = Ans * + c - '' ;
return Ans * sign ;
} void deal(int a , int b){
for(int i = ; i >= b ; -- i){
if(f[i] > a + f[i - b]) {
f[i] = a + f[i - b] ;
if(i > k && ( i < ans || (i == ans && f[i] < minn)))
ans = i , minn = f[i] ;
}
}
} int main(){
//freopen("plan.in","r",stdin);
//freopen("plan.out","w",stdout);
n = read() , k = read() ;
for(int i = ; i <= ; ++ i)
f[i] = ;
f[] = ;
for(int i = ; i <= n ; ++ i){
a = read() , b = read() , c = read() ;
int two = ;
while((b -= two) >= ){
deal(two * a , two * c) ;
two = (two<<) ;
}
b += two ;
if(b != ){
deal(b * a , b * c) ;
}
}
cout << ans << ' ' << minn ;
return ;
}
WZK的减肥计划的更多相关文章
- 男女通用的减肥计划 10分钟家庭hiit训练
在大城市的年轻人,一般都会比较忙,晚上下班吃完饭,到家就要8-9点了,再让他们去,有时候真的不太方便. 其实你如果想要,也不一定要,在家里做hiit运动,就可以了. hiit(高强度间歇运动),是目前 ...
- 【BZOJ-2095】Bridge 最大流 + 混合图欧拉回路 + 二分
2095: [Poi2010]Bridges Time Limit: 10 Sec Memory Limit: 259 MBSubmit: 604 Solved: 218[Submit][Stat ...
- Process Stats:了解你的APP如何使用内存(转)
原文地址:http://android-developers.blogspot.com/2014/01/process-stats-understanding-how-your.html?m=1 原作 ...
- 【BZOJ2095】 Bridge
Time Limit: 1000 ms Memory Limit: 128 MB Description YYD为了减肥,他来到了瘦海,这是一个巨大的海,海中有n个小岛,小岛之间有m座桥连接,两个 ...
- Slimming Plan
问题 B: Slimming Plan 时间限制: 1 Sec 内存限制: 128 MB 题目描述 Chokudai loves eating so much. However, his docto ...
- 我的2017&2018
最近项目进入验收阶段,所以上班没那么忙碌了,但是怎么说呢,我可能天生是闲不住的主,觉得浑身不自在(我这样的人是不是特别不会享福),此处应该有个笑脸哈. 翻看了博客园好几个大牛写的技术文章,感慨大牛不愧 ...
- 女性睾酮水平高(High Testosterone Levels in Women)
在外国网站了解睾酮高的一些资料,顺便记录生活点滴. 摘自网址:https://www.healthline.com/health/high-testosterone-in-women 高睾酮的妇女 睾 ...
- BZOJ2095:[POI2010]Bridges(最大流,欧拉图)
Description YYD为了减肥,他来到了瘦海,这是一个巨大的海,海中有n个小岛,小岛之间有m座桥连接,两个小岛之间不会有两座桥,并且从一个小岛可以到另外任意一个小岛.现在YYD想骑单车从小岛1 ...
- 【刷题】BZOJ 2095 [Poi2010]Bridges
Description YYD为了减肥,他来到了瘦海,这是一个巨大的海,海中有n个小岛,小岛之间有m座桥连接,两个小岛之间不会有两座桥,并且从一个小岛可以到另外任意一个小岛.现在YYD想骑单车从小岛1 ...
随机推荐
- D、Homework of PE 容斥原理
https://scut.online/p/113 终于想懂了这个容斥, 华工4月23号校赛,考虑总的所有情况,设1---n里面含有质数的个数为all,需要固定m个质数.那么有 totSum = C( ...
- JsonModel&AFNetWorking
// HttpManager.h // JsonModel&AFNetWorking // // Created by qianfeng on 15/7/21. // Copyright (c ...
- 洛谷P1435 回文字串(dp)
题意 题目链接 回文词是一种对称的字符串.任意给定一个字符串,通过插入若干字符,都可以变成回文词.此题的任务是,求出将给定字符串变成回文词所需要插入的最少字符数. 比如 “Ab3bd”插入2个字符后可 ...
- 草根程序员如何进入BAT
首页 最新文章 IT 职场 前端 后端 移动端 数据库 运维 其他技术 - 导航条 - 首页 最新文章 IT 职场 前端 - JavaScript - HTML5 - CSS 后端 - Pyt ...
- Ubuntu 11.04 安装 cuda5.0
由于实验需要,于2016年10月15日再Ubuntu11.04安装cuda5.0,但是从网上查找Ubuntu11.04 只有对应的支持的cuda4 版本,cuda 5.0前面版本不支持IDE nisg ...
- GIT SSH免登录密码实现更新(git pull)、推送(git push)操作
一.使用场景 现在有两台服务器A和B,在A服务器上搭建有git版本代码仓库,现要实现B服务器SSH免密码登录A服务器,并能够从A服务器拉取.推送代码! 二.操作步骤 1.在B服务器项目根目录下执行以 ...
- 链接服务器"(null)"的 OLE DB 访问接口 "SQLNCLI10" 返回了消息 "Cannot start more transactions on this session."
开发同事反馈一个SQL Server存储过程执行的时候,报"链接服务器"(null)"的 OLE DB 访问接口 "SQLNCLI10" 返回了消息 ...
- LoadRunner使用(1)
一.LoadRunner脚本录制 LoadRunner测试分为两个步骤: 第一步:录制脚本,其实就是监控并记录这段时间发送的HTTP请求 第二步:启动多个线程,用录制的脚本,模拟多线程发送请求. (1 ...
- javascript 和Jquery 互转
jQuery对象转成DOM对象: 两种转换方式将一个jQuery对象转换成DOM对象:[index]和.get(index); (1)jQuery对象是一个数据对象,可以通过[index]的方法,来得 ...
- asterisk-java ami2 事件监听
asteriskServer文章1提到啦怎么获取,就不解释 asteriskServer.addChainListener(new AsteriskeventListenerInit());//整个服 ...