2894 Txx考试

来源:互联网 发布:注册表清理软件残留 编辑:程序博客网 时间:2024/05/22 04:50
2894 Txx考试 时间限制: 1 s 空间限制: 32000 KB 题目等级 : 黄金 Gold题目描述 DescriptionTxx是一个成绩很差的人,考试便成了他的噩梦。于是他常在考试时睡觉以打发时间。今天他又要面临一次考试,为了保证有充足的睡眠,他决定只做k分钟题目。这次测试有n道题,第i题的得分是pi分,需要耗费ti分钟解决(将要完成也得不到分)。请你算出他最少扣多少分(总分是所有题目分值的总和)。输入描述 Input Description第一行k第二行n第三行到第n+2行每行两个数:ti和pi输出描述 Output DescriptionTxx最少的扣分样例输入 Sample Input532 61 34 7 样例输出 Sample Output6 数据范围及提示 Data Size & Hint100%的数据中,k<=100000,ti<=10000,pi<=10000;30%的数据中,n<=20;100%的数据中,n<=500**************************和数字三角形(或01背包)的一维动规一样**************************需要注意输入顺序和输出最少扣分#include<iostream>#include<string.h>#include<cstdio>#include<algorithm> using namespace std;struct{int t,p;}q[501];int f[1000000];int main(){memset(f,0,sizeof(f));int T,n,i,j,maxp = 0;int sum = 0;cin>>T>>n;for(i = 1; i <= n; i++){cin>>q[i].t>>q[i].p;sum += q[i].p;}for(i = 1; i <= n; i++){for(j = T; j >= q[i].t; j--){f[j] = max(f[j],f[j-q[i].t]+q[i].p);if(f[j] > maxp) maxp = f[j];}}cout<<sum-maxp<<endl;return 0;}



**********************************************************************仅供吐槽

0 0
原创粉丝点击