ZOJ 3211Dream City(dp)
来源:互联网 发布:大数据分析师笔试内容 编辑:程序博客网 时间:2024/06/15 01:01
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3211
书上有钱,一天砍一棵树,每天树上钱按一定速度增加 输出m天能收获最多的钱
先对输出的数据排序,一开始按照初始状态大到小,增长速度小到大的方法排序,结果是wa,最后只对增长速度排序。
#include<iostream>#include<cstdio>#include<set>#include<string>#include<string.h>#include<cstring>#include<vector>#include<map>#include<queue>#include<stack>#include<cctype>#include<algorithm>#include<sstream>#include<utility>#include<cmath>#define mt(a) memset(a,0,sizeof (a))#define fl(a,b,c) fill(a,b,c)#define SWAP(a,b,t) (t=a,a=b,b=t)#define inf 1000000000+7using namespace std;typedef struct tree{int start, up;}tree;typedef long long ll;int dp[300][300];tree t[300];int cut[300];int up[300];int start[300];bool com(tree x, tree y){//if(x.start != y.start)return x.start > y.start;return x.up < y.up;}int main(){int T;cin >> T;while (T--){mt(dp);mt(t);int n, m;scanf("%d %d", &n, &m);for (int i = 1; i <= n; i++)scanf("%d", &t[i].start);for (int i = 1; i <= n; i++)scanf("%d", &t[i].up);sort(t + 1, t + n + 1, com);for (int i = 1; i <= n; i++){for (int j = 1; j <= m; j++){dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - 1] + t[i].start + t[i].up*(j - 1));}}printf("%d\n", dp[n][m]);}return 0;}
0 0
- ZOJ 3211 Dream City(DP)
- ZOJ 3211Dream City(dp)
- ZOJ 3211 Dream City【dp】
- zoj 3211 Dream City(DP)
- ZOJ 3211 Dream City(DP)
- zoj 3211 Dream city dp+贪心
- ZOJ - 3211 Dream City
- zoj 3211 - Dream City
- ZOJ 3211 Dream City
- ZOJ 3211 Dream City
- zoj 3211 Dream City
- ZOJ-3211-Dream City【6th浙江省赛】【dp】
- ZOJ 3211 6th省赛 J Dream City【DP】
- zoj 3211 dream city 贪心 dp和记忆化搜索
- ZOJ-3211-Dream City-DP背包问题+贪心
- zoj 3211 Dream City 动态规划
- zoj 3211 Dream City 贪心+动规
- Dream City ZOJ
- 【转载】Android Studio 使用AIDL
- Socket
- 向量计算两条link的夹角
- c++模板类(一)理解编译器的编译模板过程
- getPath()与getAbsolutePath()
- ZOJ 3211Dream City(dp)
- 蓝桥杯-杨辉三角形(BASIC)
- jquery的delegate实现原理
- 转一篇本站关于自定义c实现com的帖子,文章很不错,翻译的也很给力
- LaTeX中字体加黑命令的使用方法
- android开发 框架
- ZOJ 3212K-Nice(构造)
- docker
- a kind of programming font on linux -- Inconsolata