CodeForces
来源:互联网 发布:java 6 api中文 在线 编辑:程序博客网 时间:2024/06/03 23:17
CodeForces - 106C
Lavrenty, a baker, is going to make several buns with stuffings and sell them.
Lavrenty has n grams of dough as well asm different stuffing types. The stuffing types are numerated from 1 tom. Lavrenty knows that he has ai grams left of the i-th stuffing. It takes exactly bi grams of stuffingi and ci grams of dough to cook a bun with thei-th stuffing. Such bun can be sold for di tugriks.
Also he can make buns without stuffings. Each of such buns requiresc0 grams of dough and it can be sold ford0 tugriks. So Lavrenty can cook any number of buns with different stuffings or without it unless he runs out of dough and the stuffings. Lavrenty throws away all excess material left after baking.
Find the maximum number of tugriks Lavrenty can earn.
The first line contains 4 integers n, m, c0 and d0 (1 ≤ n ≤ 1000,1 ≤ m ≤ 10, 1 ≤ c0, d0 ≤ 100). Each of the followingm lines contains 4 integers. Thei-th line contains numbers ai, bi, ci and di (1 ≤ ai, bi, ci, di ≤ 100).
Print the only number — the maximum number of tugriks Lavrenty can earn.
10 2 2 17 3 2 10012 3 1 10
241
100 1 25 5015 5 20 10
200
To get the maximum number of tugriks in the first sample, you need to cook 2 buns with stuffing 1, 4 buns with stuffing 2 and a bun without any stuffing.
In the second sample Lavrenty should cook 4 buns without stuffings.
#include<iostream>#include<algorithm>#include<stdio.h>#include<string.h>using namespace std;int dp[1200];int num[20];int gram[20];int value[20];//多重背包的问题 可是... int n,m,i;int main(){int a,b;int x,y,z,w;scanf("%d%d",&n,&m);scanf("%d%d",&a,&b);for(i=1;i<=m;i++){scanf("%d%d%d%d",&x,&y,&z,&w);num[i]=x/y;gram[i]=z;value[i]=w;}gram[0]=a;value[0]=b;num[0]=n/a;memset(dp,0,sizeof(dp)); for(i=0;i<=m;i++){ for(int j=1;j<=num[i];j++) { for(int k=n;k>=gram[i];k--) dp[k]=max(dp[k],dp[k-gram[i]]+value[i]); }}printf("%d\n",dp[n]);return 0;}
- codeforces~~~
- Codeforces
- codeforces
- Codeforces
- codeforces
- codeforces
- Codeforces
- Codeforces
- CodeForces
- CodeForces
- CodeForces
- CodeForces
- CodeForces
- Codeforces
- Codeforces
- Codeforces
- Codeforces
- Codeforces
- POJ 1019 Number Sequence
- C语言基础知识
- [BZOJ] 3674 可持久化并查集加强版(主席树广泛运用)
- 【zzuli 2181】(GJJ的日常之暴富梦)
- python学习八(私有属性、__del__(self)方法)
- CodeForces
- EXCEL ADDIN 学习(一)
- 在Ubuntu中使用JAVA与tomcat搭建web服务器
- Nmap功能与常用命令
- Wireshark的专家模式
- GCC编译器入门[转载]
- Contemplation! Algebra UVA
- 单文件夹下的C程序如何编写Makefile文件
- 为多个文件夹下的C源代码编写Makefile文件