九校模拟——餐馆(restaurant)

1 餐馆(restaurant) 
1.1 题目背景 
铜企鹅是企鹅餐馆的老板,他正在计划如何使得自己本年度收益增加。 
1.2 题目描述 
共有n 种食材,一份食材i 需要花ti 小时不间断地进行播种,施肥, 
直至收获。当然,一份食材i 是可以直接卖掉得到wi 块钱的。 
招牌菜共有m 种,一份招牌菜i 需要消耗一定的食材,花Ti 小时不 
间断地来烹饪,叫卖,并最终卖出得到Wi 块钱。 
整个季度换算下来一共有Tmax 小时可供你使用,铜企鹅需要在这期间 
赚到最多的钱,这样他才有足够多的钱来steam 剁手,或者氪金手游。 
1.3 格式 
1.3.1 输入格式 
第一行一个整数T,表示数据组数。 
令i 表示为当前数据内行数。 
第一行三个整数n; m; Tmax,含义如题所示。 
第二行至第n + 1 行,每行两个整数ti-1;wi-1,含义如题所示。 
第n + 2 行至第n + m + 1 行,每行两个整数T i-n-1;W i-n-2,含义如题所示。 
第n + m + 2 行至第n + 2m + 1 行,每行n 个整数,第j 个数dj 表示招牌菜i-n-m-1 需要dj 个食材j。 
1.3.2 输出格式 
对于每组数据,输出一行一个整数,表示你所能赚到的最多的钱。 
1.4 样例 
1.4.1 样例输入 


1 48 
2 2000 
9 21864 

4 4 46 
17 52 
4 36 
5 43 
16 62 
9 31659 
1 20431 
4 623 
1 11961 
4 5 3 5 
5 4 3 4 
3 3 3 3 
4 4 5 5 
10 0 48 
10 41 
18 48 
2 14 
22 65 
12 77 
7 48 
4 85 
2 61 
24 85 
8 34 
1.4.2 样例输出 
53728 
410 
1464 
1.5 数据范围 
Subtask| 分值|n | m | T 
1 |3 | 1| 1| 0 
2 |20| 1 |1 |5 
3 |10 |4| 4| 5 
4 |17 |2000| 0| 5 
5 |50| 2000 |2000| 4 
对于100% 的数据,保证0 < ti; Ti <=Tmax<= 5000; 
0 <=wi;Wi <=10^9, 
每份招牌菜使用的食材的个数总数不超过10^5。

 1 #include<cstdio>
 2 #include<cmath>
 3 #include<cstring>
 4 #include<algorithm>
 5 using namespace std;
 6 long long int i,j,T,n,m,tda,k,wa,f[5005],tot = 0,p;
 7 struct node
 8 {
 9   long long int t;
10   long long int w;
11 }a[4005];
12 long long read()
13 {
14     int ret=0;
15     char c;
16     c=getchar();
17     while(c>‘9‘||c<‘0‘) {
18         c=getchar();
19     }
20     while(c>=‘0‘&&c<=‘9‘) {
21         ret=ret*10+c-‘0‘;
22         c=getchar();
23     }
24     return ret;
25 }
26 int main()
27 {
28   scanf("%lld",&T);
29   for(p = 1;p  <= T;p++)
30     {
31       n = read();
32       m = read();
33       tda = read();
34       for(i = 1;i <= tda;i++)
35     {
36       f[i] = 0;
37     }
38       for(i = 1;i <= n + m;i++)
39     {
40           a[i].t = read();
41         a[i].w = read();
42     }
43       for(i = n + 1;i <= n + m;i++)
44     {
45       for(j = 1;j <= n;j++)
46         {
47             wa = read();
48           a[i].t += a[j].t * wa;
49         }
50     }
51       for(i = 1;i <= n + m;i++)
52     {
53          for(j = a[i].t;j <= tda;j++)
54         {
55           f[j] = max(f[j],f[j - a[i].t] + a[i].w);
56         }
57     }
58       printf("%lld\n",f[tda]);
59     }
60   return 0;
61 }

*******这道题是一个多重背包哦,特别神奇,加个long long能多47分,如果要是加个读入优化,就AC啦。 
对于招牌菜的时间要加上他所需要的食材的时间哦0.0

原文地址:https://www.cnblogs.com/rax-/p/9609367.html

时间: 2024-11-05 17:28:02

九校模拟——餐馆(restaurant)的相关文章

九校联考 终&amp;启

one term's ending... class:12 school:130...130...130... 至今没有看到九校的排名,如果九校排名正常的话,那yyhs的学生也太可怕了...估计要三百开外了 语文是比较意外的分数,尽管选择题做得差,可是有史以来第一次下110....why 数学和英语都比预估的低. 政史地84 65 78,感觉最对不起历史老师...地理从来没好过. 物化技82 75 83,是时候改课了..... 明明下半学期一直在学文化课...现在连浙大线都考不上了.... 学考

10.02 T3 打表找递推式+十进制快速幂 九校联考凉心模拟DAY1T1

题目背景 金企鹅同学非常擅长用1*2的多米诺骨牌覆盖棋盘的题.有一天,正 在背四六级单词的他忽然想:既然两个格子的积木叫“多米诺(domino)”,那 么三个格子的的积木一定叫“三米诺(tromino)”了!用三米诺覆盖棋盘的题 怎么做呢? 题目描述 用三米诺覆盖3n 的矩形棋盘,共多少种方案?三米诺可旋转:两种 方案不同当且仅当这两种图案直接覆盖在一起无法重叠. 输入输出格式 输入格式: 一行一个整数n(n<=10^40000),表示棋盘列数. 输出格式: 一行一个整数,表示方案数,对9982

JavaWeb学习总结(四十九)——简单模拟Sping MVC

在Spring MVC中,将一个普通的java类标注上Controller注解之后,再将类中的方法使用RequestMapping注解标注,那么这个普通的java类就够处理Web请求,示例代码如下: 1 /** 2 * 使用Controller注解标注LoginUI类 3 */ 4 @Controller 5 public class LoginUI { 6 7 //使用RequestMapping注解指明forward1方法的访问路径 8 @RequestMapping("LoginUI/Lo

HDU5399-多校-模拟

Too Simple Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1214    Accepted Submission(s): 406 Problem Description Rhason Cheung had a simple problem, and asked Teacher Mai for help. But Teacher

HDU 5319多校 模拟

Problem Description Mr. Hdu is an painter, as we all know, painters need ideas to innovate , one day, he got stuck in rut and the ideas dry up, he took out a drawing board and began to draw casually. Imagine the board is a rectangle, consists of seve

【九校联考】锻造

题目描述 "欢迎啊,老朋友." 一阵寒暄过后,厂长带他们参观了厂子四周,并给他们讲锻造的流程. "我们这里的武器分成若干的等级,等级越高武器就越厉害,并且对每一等级的武器都有两种属性值 b 和 c,但是我们初始只能花 a 个金币来生产 1 把 0 级剑--" "所以你们厂子怎么这么垃圾啊,不能一下子就造出来 999 级的武器吗?"勇者不耐烦的打断了厂长的话. "别着急,还没开始讲锻造呢--那我们举例你手中有一把 x 级武器和一把 y 级

类嵌套_list泛型_餐馆点菜例

form1内容: private void button1_Click(object sender, EventArgs e) { //声明并初始化一张点菜清单 yiduicai danzi = new yiduicai(); //声明并初始化第一个菜 yigecai cai1 = new yigecai(3.6f, 2); //把第一个菜添加到点菜清单 danzi.addcai(cai1); //声明并初始化第二个菜 cai1 = new yigecai(9f, 1); //把第二个菜添加到点

语文高考识记现代汉字的字形【转】

要点导读:基础知识,既是得分重点,也是常见失分点,13个状元帮你牢记易错知识点,13位名师助你剖析易误点,让你6月7号考场不再有失分点. 备考启示:误点总结,全面剖析,多记一点,少失一分.错题积累也是你成功的源泉! 识记现代汉字的字形 ◆◆◆状元笔记薄◆◆◆ 1.字形相似而误 有些字由于部首相同,字形接近,所以容易混淆.30例常见易错字(括号中为可能写成的 错字,下同):亨(享)通.荼(茶)毒.谒(竭)见.膏肓(盲).草菅(管).扫描(瞄).整饬(饰).怂(纵)恿.粗犷(旷).拇(姆)指.针灸

基于多线程的C#版QQ农场

基于多线程的C#版QQ农场(图形图像,文件和流,多线程,Web服务) 课程链接:http://www.dwz.cn/wkkAv 咨询QQ2110053820 课程讲师:蝈蝈 课程分类:.Net 适合人群:初级 课时数量:35课时 更新程度:完毕 用到技术:文本编辑器的实现.图形图像编程.多线程编程.文件和流 涉及项目:QQ农场 课程简介: 模拟QQ农场是以农场为背景的模拟经营类游戏,前身为"五分钟"团队开 发的开心农场,后面则嵌入在Q间和QQ校友(腾讯朋友)平台中的应用程序 游戏.游戏