背包DP【洛谷P2113】 看球泡妹子】的更多相关文章

洛谷题目链接:看球泡妹子 题目背景 2014年巴西世界杯开幕了,现在满城皆是世界杯,商家们利用它大赚一笔,小明和小红也借此机会增进感情. 题目描述 本届世界杯共有N支球队,M场比赛.男球迷小明喜欢看比赛,女球迷小红喜欢看帅哥.每支球队在小明眼里的实力值为Ai,在小红眼里的帅哥数量为Bi. 每场比赛有两个球队对抗,它们的编号分别是Pi和Qi.小明认为一场比赛的精彩度等于两队实力的乘积,小红则认为是两队帅哥数量之和. 由于体力的限制,他们最多只能看K场比赛.当然,只要看比赛,两个人一定会一起看.小明…
2333 这么水的蓝题 f[i][j] 表示看了i场比赛,小♀红的什么东西为j时小♂明的什么值 强行压维蛤蛤 剩下的转移很简单(注意i的循环顺序从后往前,01背包) (具体见代码) #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<cstdio> #include<queue> #include<cmath>…
P2113 看球泡妹子 题目背景 2014年巴西世界杯开幕了,现在满城皆是世界杯,商家们利用它大赚一笔,小明和小红也借此机会增进感情. 题目描述 本届世界杯共有N支球队,M场比赛.男球迷小明喜欢看比赛,女球迷小红喜欢看帅哥.每支球队在小明眼里的实力值为Ai,在小红眼里的帅哥数量为Bi. 每场比赛有两个球队对抗,它们的编号分别是Pi和Qi.小明认为一场比赛的精彩度等于两队实力的乘积,小红则认为是两队帅哥数量之和. 由于体力的限制,他们最多只能看K场比赛.当然,只要看比赛,两个人一定会一起看.小明作…
看球泡妹子 题目背景 2014年巴西世界杯开幕了,现在满城皆是世界杯,商家们利用它大赚一笔,小明和小红也借此机会增进感情. 题目描述 本届世界杯共有\(N\)支球队,\(M\)场比赛.男球迷小明喜欢看比赛,女球迷小红喜欢看帅哥.每支球队在小明眼里的实力值为\(A_i\),在小红眼里的帅哥数量为\(B_i\). 每场比赛有两个球队对抗,它们的编号分别是\(P_i\)和\(Q_i\).小明认为一场比赛的精彩度等于两队实力的乘积,小红则认为是两队帅哥数量之和. 由于体力的限制,他们最多只能看\(K\)…
洛谷P2014 选课 题目描述 在大学里每个学生,为了达到一定的学分,必须从很多课程里选择一些课程来学习,在课程里有些课程必须在某些课程之前学习,如高等数学总是在其它课程之前学习.现在有N门功课,每门课有个学分,每门课有一门或没有直接先修课(若课程a是课程b的先修课即只有学完了课程a,才能学习课程b).一个学生要从这些课程里选择M门课程学习,问他能获得的最大学分是多少? 输入输出格式 输入格式: 第一行有两个整数N,M用空格隔开.(1<=N<=300,1<=M<=300) 接下来的…
题目描述 Bessie像她的诸多姊妹一样,因为从Farmer John的草地吃了太多美味的草而长出了太多的赘肉.所以FJ将她置于一个及其严格的节食计划之中.她每天不能吃多过H ( <= H <= ,)公斤的干草. Bessie只能吃一整捆干草:当她开始吃一捆干草的之后就再也停不下来了.她有一个完整的N ( <= N <= )捆可以给她当作晚餐的干草的清单.她自然想要尽量吃到更多的干草.很自然地,每捆干草只能被吃一次(即使在列表中相同的重量可能出现2次,但是这表示的是两捆干草,其中每…
https://www.luogu.org/problemnew/show/P1880 题目 题目描述 在一个圆形操场的四周摆放N堆石子,现要将石子有次序地合并成一堆.规定每次只能选相邻的2堆合并成新的一堆,并将新的一堆的石子数,记为该次合并的得分. 试设计出1个算法,计算出将N堆石子合并成1堆的最小得分和最大得分. 输入输出格式 输入格式: 数据的第1行试正整数N,1≤N≤100,表示有N堆石子.第2行有N个数,分别表示每堆石子的个数. 输出格式: 输出共2行,第1行为最小得分,第2行为最大得…
蒟蒻表示老久没看过dp题目了,,挺水的一道dp题目都没想出来,,, 首先设dp[i]表示从开始到i时间的最大空闲时间,用vector to[x] 表示从x点开始的任务结束时间,cnt[x]表示从x开始的任务个数,初始化dp[i] i = 1 -> n 为 -1, dp[0]为0 转移时,对于dp[i],如果dp[i-1] 为 -1,无法完成转移 如果dp[i-1] > 0分两种情况 1.如果i时刻无任务,直接dp[i] = max{dp[i], dp[i-1] + 1} 2.如果i时刻有任务,…
贪心做法 每次尽可能选择已经放过球的柱子 #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> #include <cmath> using namespace std; int num[100][1000],n; bool chk(const int &a,const int &b){ int t=sqrt(a+b); retu…
题目链接 题意:你有n个货物从1-n依次排列,每天可以从两侧选一个出来卖,卖的价格是当天的天数乘该货物的初始价格,问这批货物卖完的最大价格 输入:第一行n,之后是n个货物的初始价值 这道题不能用贪心做,因为可能存在右端点非常大,但其左边的数非常小, 但因为右端点太大而没被及时卖出 如:9 9 9 1 1 10 贪心:sum=9*1+9*2+9*3+1*4+1*5+10*6=123sum=9∗1+9∗2+9∗3+1∗4+1∗5+10∗6=123 而正解为150,也就是说这个题当前的决策会影响到后面…