toj1626 Function Run Fun 欢迎留言求指教 DP理解不透彻。。
2013-09-21 22:53
148 查看
题目链接:http://acm.tju.edu.cn/toj/showp1626.html
题目大意:给定一串关系 求表达式的值
思路:试了 直接递归会超时 所以DP 动态规划把前面计算出来的结果存起来??
代码:
#include<iostream>
#include <cstring>
using namespace std;
#define M 101
int ww[M][M][M]; 这个辅助数组很有用
long long w(int x,int y,int z) //求指教???
{
if(x<=0||y<=0||z<=0) return 1;
if(ww[x][y][z]) return ww[x][y][z];
if(x>20||y>20||z>20) {ww[x][y][z]=w(20,20,20); return ww[x][y][z];}
if(x<y&&y<z) {ww[x][y][z]=w(x,y,z-1)+w(x,y-1,z-1)-w(x,y-1,z);return ww[x][y][z];}
ww[x][y][z]=w(x-1,y,z)+w(x-1,y-1,z)+w(x-1,y,z-1)-w(x-1,y-1,z-1);
return ww[x][y][z];
}
int main()
{
int a,b,c,i,j,k;
while(cin>>a>>b>>c)
{
if(a==-1&&b==-1&&c==-1) break;
memset(ww,0,sizeof(ww));
//printf("w(%d, %d, %d) = %lld\n",a,b,c,w(a,b,c));
cout<<"w("<<a<<", "<<b<<", "<<c<<") = "<<w(a,b,c)<<endl;
}
return 0;
}
题目大意:给定一串关系 求表达式的值
思路:试了 直接递归会超时 所以DP 动态规划把前面计算出来的结果存起来??
代码:
#include<iostream>
#include <cstring>
using namespace std;
#define M 101
int ww[M][M][M]; 这个辅助数组很有用
long long w(int x,int y,int z) //求指教???
{
if(x<=0||y<=0||z<=0) return 1;
if(ww[x][y][z]) return ww[x][y][z];
if(x>20||y>20||z>20) {ww[x][y][z]=w(20,20,20); return ww[x][y][z];}
if(x<y&&y<z) {ww[x][y][z]=w(x,y,z-1)+w(x,y-1,z-1)-w(x,y-1,z);return ww[x][y][z];}
ww[x][y][z]=w(x-1,y,z)+w(x-1,y-1,z)+w(x-1,y,z-1)-w(x-1,y-1,z-1);
return ww[x][y][z];
}
int main()
{
int a,b,c,i,j,k;
while(cin>>a>>b>>c)
{
if(a==-1&&b==-1&&c==-1) break;
memset(ww,0,sizeof(ww));
//printf("w(%d, %d, %d) = %lld\n",a,b,c,w(a,b,c));
cout<<"w("<<a<<", "<<b<<", "<<c<<") = "<<w(a,b,c)<<endl;
}
return 0;
}
相关文章推荐
- ACM学习历程——HDU1331 Function Run Fun(锻炼多维dp的打表)
- 【poj1579】Function Run Fun (动态规划DP递归,记忆化递归)
- PKU1579 Function Run Fun (DP水题)
- poj 1579 Function Run Fun(DP:水题)
- HDU1579 Function Run Fun(DP,记忆化搜索)
- poj - 1579 Function Run Fun 【dp】
- ACM-DP之Function Run Fun——hdu1331
- hdu 1331 Function Run Fun(DP)
- HDU-1331-Function Run Fun(记忆化搜索,dp)
- hdu 1331 Function Run Fun(DP)
- POI合并单元格边框显示问题,笨方法解决。如有更好的方法,欢迎留言,求指教告知
- Function Run Fun (HDU 1331) —— 记忆化搜索DP
- hdoj1331_Function Run Fun(dp)
- JS 关于(function( window, undefined ) {})(window)写法的理解
- Android Activity 生命周期的透彻理解
- HDU 3507 Print Article(斜率DP入门理解)
- js中(function(){…})()立即执行函数写法理解
- android activity生命周期的透彻理解
- UFLDL第一章,若使得隐藏激活值最大,则函数的输入满足条件(若推导过程有问题,欢迎留言批评指正)
- 深入理解JavaScript系列(49):Function模式(上篇)