[vijos1011]滑雪

Vincent_hwh Vincent_hwh     2022-08-12     391

关键词:

暴搜

 1 #include<cstdio>
 2 #include<iostream>
 3 #include<cstring>
 4 using namespace std;
 5 
 6 int num[505][505];
 7 int Ans=1,n,m;
 8 int fx[4]={0,0,1,-1};
 9 int fy[4]={1,-1,0,0};
10 
11 void dfs(int x,int y,int len){
12     Ans=max(Ans,len);
13     for (int i=0;i<4;i++)
14       if (num[x][y]>num[x+fx[i]][y+fy[i]]&&num[x+fx[i]][y+fy[i]]!=-1)
15         dfs(x+fx[i],y+fy[i],len+1);
16 }
17 
18 int main(){
19     freopen("ski.in","r",stdin);
20     freopen("ski.out","w",stdout);
21     scanf("%d%d",&n,&m);
22     memset(num,-1,sizeof(num));
23     for (int i=1;i<=n;i++)
24       for (int j=1;j<=m;j++)
25         scanf("%d",&num[i][j]);
26     for (int i=1;i<=n;i++)
27       for (int j=1;j<=m;j++){
28           bool is_ok=0;
29           for(int t=0;t<=3;t++)
30             if (num[i][j]>num[i+fx[t]][j+fy[t]]&&num[i+fx[t]][j+fy[t]]!=-1) is_ok=1;
31           if (is_ok==1) dfs(i,j,1);  
32       }
33     printf("%d",Ans);
34     return 0;
35 }
View Code

直接搜索无法很好的处理重叠子问题,因此可采用记忆化搜索以减少时间

记忆化搜索

 1 #include<cstdio>
 2 #include<cstring>
 3 #include<iostream>
 4 using namespace std;
 5 
 6 int f[505][505];//存储从(i,j)出发可滑的最长路径,避免重复搜索
 7 int num[505][505];
 8 int fx[4]={0,0,1,-1};
 9 int fy[4]={1,-1,0,0};
10 
11 int dfs(int x,int y){
12     int tmp=0;
13     if (f[x][y]!=-1) return f[x][y];
14     for (int i=0;i<4;i++){
15         if (num[x][y]>num[x+fx[i]][y+fy[i]]&&num[x+fx[i]][y+fy[i]]!=-1)
16             tmp=max(tmp,dfs(x+fx[i],y+fy[i])+1);
17     }
18     if (tmp==0) {
19         f[x][y]=1;
20         return 1;
21     }
22     f[x][y]=tmp;
23     return tmp;
24 }
25 int main(){
26     int ans=1;
27     freopen("ski2.in","r",stdin);
28     freopen("ski2.out","w",stdout);
29     int n,m;
30     scanf("%d%d",&n,&m);
31     memset(num,-1,sizeof(num));
32     memset(f,-1,sizeof(f));
33     for (int i=1;i<=n;i++)
34       for (int j=1;j<=m;j++)
35         scanf("%d",&num[i][j]);
36     for (int i=1;i<=n;i++)
37       for (int j=1;j<=m;j++)
38         ans=max(ans,dfs(i,j));
39     printf("%d\n",ans);
40     return 0;
41 } 
View Code

 

poj1088滑雪

...                         滑雪TimeLimit: 1000MS MemoryLimit: 65536KTotalSubmissions: 100636 Accepted: 38304DescriptionMichael喜欢滑雪百这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑 查看详情

poj滑雪

滑雪TimeLimit: 1000MS MemoryLimit: 65536KTotalSubmissions: 97172 Accepted: 36843DescriptionMichael喜欢滑雪百这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次... 查看详情

dfspoj1088滑雪

滑雪TimeLimit: 1000MS MemoryLimit: 65536KTotalSubmissions: 97298 Accepted: 36894DescriptionMichael喜欢滑雪百这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次... 查看详情

poj1088滑雪

滑雪TimeLimit: 1000MS MemoryLimit: 65536KTotalSubmissions: 97335 Accepted: 36911DescriptionMichael喜欢滑雪百这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次... 查看详情

gnu滑雪板啥档次

gnu滑雪板是中高档次,很受群众欢迎,滑板的质量很好,而且价格实惠。很受年轻人的喜爱。档次属于中高档的水平。参考技术A你好,gnu滑雪板什么档次这个问题我来帮你解答,gnu滑雪板是十大滑雪板品牌前十的产品,属于高... 查看详情

滑雪(动规)

滑雪【问题描述】       小明喜欢滑雪,因为滑雪的确很刺激,可是为了获得速度,滑的区域必须向下倾斜,当小明滑到坡底,不得不再次走上坡或等着直升机来载他,小明想知道在一个区域中最长的滑... 查看详情

p1434滑雪

P1434滑雪题目描述Michael喜欢滑雪。这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道在一个区域中最长的滑坡。区域... 查看详情

openjudgebailian1088滑雪dfs

滑雪TimeLimit:1000MS     MemoryLimit:65536KB     64bitIOFormat:%I64d&%I64uOpenJ_Bailian1088 DescriptionMichael喜欢滑雪百这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑的区 查看详情

cogs244.[poi2000]滑雪队

                       244.[POI2000]滑雪队一个滑雪队在Byte山上组织了一次训练。山的北坡有一个滑雪场,所有的滑雪者都要从山上的起点站 查看详情

滑雪(dp)(代码片段)

问题H:【例9.24】滑雪时间限制: 1Sec  内存限制: 128MB提交: 21  解决: 13[提交][状态][讨论版][命题人:quanxing][Edit][TestData][同步数据]题目描述小明喜欢滑雪,因为滑雪的确很刺激,可是为了获得速度,滑... 查看详情

1434滑雪

...搜索提交次数:1涉及知识:动态规划题目描述Michael喜欢滑雪。这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道在一... 查看详情

1088滑雪

试题描述 Michael喜欢滑雪百这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道载一个区域中最长底滑坡。区域由一... 查看详情

1088滑雪

试题描述 Michael喜欢滑雪百这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道载一个区域中最长底滑坡。区域由一... 查看详情

poj1088滑雪(记忆化搜索)

滑雪TimeLimit: 1000MS MemoryLimit: 65536KTotalSubmissions: 92384 Accepted: 34948DescriptionMichael喜欢滑雪百这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次... 查看详情

poj1088滑雪最短路径

滑雪TimeLimit: 1000MS MemoryLimit: 65536KTotalSubmissions: 97281 Accepted: 36886DescriptionMichael喜欢滑雪百这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次... 查看详情

code[vs]2152滑雪题解

Code[VS]2152滑雪题解题目描述 Descriptiontrs喜欢滑雪。他来到了一个滑雪场,这个滑雪场是一个矩形,为了简便,我们用r行c列的矩阵来表示每块地形。为了得到更快的速度,滑行的路线必须向下倾斜。例如样例中的那个矩形,... 查看详情

案例分享智能定位胸牌在滑雪场管理中的应用案例

...发展,人们对于生活质量的要求也逐步提高。近年来滑雪作为热门户外运动之一,不仅给人们带来了新的运动方式而且让人们在滑雪中找到了回归自然的感觉,因此该受到了人们广泛的喜爱。但由于滑雪场地较大࿰... 查看详情

搜索洛谷p1434滑雪

 P1434滑雪题目描述Michael喜欢滑雪。这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道在一个区域中最长的滑坡。... 查看详情