(1078)HDU-记忆化搜索
2015-02-10 20:20
218 查看
#include<iostream>
#include<cstdio>
#include<string.h>
#include<string>
#include<set>
#include<algorithm>
#include<cmath>
#define ll __int64
#define MAX 1000009
using namespace std;
/*
记忆化搜索
*/
int map[509][509];
int dp[509][509];//(i,j)下最大值
int n,k;
int dir[4][2] = {0,1,0,-1,-1,0,1,0};
int dfs(int x,int y)
{
//cout<<x<<" "<<y<<endl;
if(dp[x][y]) return dp[x][y];
int num = 0;
for(int i=1;i<=k;i++)
{
for(int j = 0;j<4;j++)
{
int xx = x + dir[j][0]*i;
int yy = y + dir[j][1]*i;
if(xx<0||xx>=n||yy<0||yy>=n)continue;
if(map[xx][yy]>map[x][y])
{
num = max(num,dfs(xx,yy));
}
}
}
return dp[x][y] = map[x][y] + num;
}
int main()
{
int i,j;
while(~scanf("%d%d",&n,&k))
{
if(n==-1&&k==-1)break;
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
scanf("%d",&map[i][j]);
}
}
memset(dp,0,sizeof(dp));
printf("%d\n",dfs(0,0));
}
return 0;
}
动态规划基础题,呜呜,自己没想到
#include<cstdio>
#include<string.h>
#include<string>
#include<set>
#include<algorithm>
#include<cmath>
#define ll __int64
#define MAX 1000009
using namespace std;
/*
记忆化搜索
*/
int map[509][509];
int dp[509][509];//(i,j)下最大值
int n,k;
int dir[4][2] = {0,1,0,-1,-1,0,1,0};
int dfs(int x,int y)
{
//cout<<x<<" "<<y<<endl;
if(dp[x][y]) return dp[x][y];
int num = 0;
for(int i=1;i<=k;i++)
{
for(int j = 0;j<4;j++)
{
int xx = x + dir[j][0]*i;
int yy = y + dir[j][1]*i;
if(xx<0||xx>=n||yy<0||yy>=n)continue;
if(map[xx][yy]>map[x][y])
{
num = max(num,dfs(xx,yy));
}
}
}
return dp[x][y] = map[x][y] + num;
}
int main()
{
int i,j;
while(~scanf("%d%d",&n,&k))
{
if(n==-1&&k==-1)break;
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
scanf("%d",&map[i][j]);
}
}
memset(dp,0,sizeof(dp));
printf("%d\n",dfs(0,0));
}
return 0;
}
动态规划基础题,呜呜,自己没想到
相关文章推荐
- FatMouse and Cheese HDU - 1078 (记忆化搜索)
- hdu 1078 记忆化搜索
- HDU 1078 FatMouse and Cheese【记忆化搜索】
- hdu 1078 (记忆化搜索)
- [HDU 1078 ] FatMouse and Cheese [ dp 记忆化搜索 ]
- HDU 1078 FatMouse and Cheese(记忆化搜索)
- hdu 1078 FatMouse and Cheese(记忆化搜索)
- HDU 1078 FatMouse and Cheese【记忆化搜索】
- hdu 1078 FatMouse and Cheese (dfs+记忆化搜索)
- 记忆化搜索:HDU1078-FatMouse and Cheese(记忆化搜索)
- hdu1078 FatMouse and Cheese【记忆化搜索】
- hdu 1078(记忆化搜索)
- hdu 1078记忆化搜索
- hdu 1078 记忆化搜索
- hdu 1078(记忆化搜索)
- HDU 1078 记忆化搜索
- hdu 1078 FatMouse and Cheese(记忆化搜索)
- hdu 1078 FatMouse and Cheese(dp 记忆化搜索)
- hdu 1078 fatmouse and cheese 记忆化搜索
- 【记忆化搜索】HDU-1078 FatMouse and Cheese