博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HDU1069(还是dp基础)
阅读量:7201 次
发布时间:2019-06-29

本文共 1002 字,大约阅读时间需要 3 分钟。

今天不想说太多废话~由于等下要写自己主动提交机。

不知道能不能成功呢?

题目的意思就是,一个猴子,在叠砖头 ...以下的要严格大于上面的。求叠起来最高能到多少~

n非常少,n^2算法毫无压力~话说dp的n一般都小。

我们先排序。拍完序的状态转移方程是:  dp[i]=max(dp[j])+z[i],0<=i<=j。记得要等于。

之后再线性遍历一下找出max ,不然还是WA~

还有在读入的时候,一个砖生成六个砖,能够自己暴力模拟一下。我是走循环的~

这个循环条件我也不知道怎么说。我仅仅是认为推断两两不相等好麻烦,我这个映射在小范围没出现过问题。

/***********************************************************	> OS     : Linux 3.2.0-60-generic #91-Ubuntu	> Author : yaolong	> Mail   : dengyaolong@yeah.net 	> Time   : 2014年06月03日 星期二 07:11:21 **********************************************************/#include
#include
#include
#include
#include
#include
using namespace std;#define maxn 200int x[maxn];int y[maxn];int z[maxn];int dp[maxn];int I[maxn];int cmp(int i,int j){ if(x[i]!=x[j]){ return x[i]
>n&&n){ int ind=1; for(i=0;i
>tmp[j]; } for(int l=0;l<3;l++) for(int k=0;k<3;k++) for(int m=0;m<3;m++){ if(l*l+k*k+m*m==5){ x[ind]=tmp[l]; y[ind]=tmp[k];z[ind]=tmp[m];ind++; } } } for(i=0;i

转载地址:http://buzum.baihongyu.com/

你可能感兴趣的文章