Heim > Web-Frontend > HTML-Tutorial > Codeforces Round #220 (Div. 2)C题:Inna and Dima(记忆化搜索+DP)_html/css_WEB-ITnose

Codeforces Round #220 (Div. 2)C题:Inna and Dima(记忆化搜索+DP)_html/css_WEB-ITnose

WBOY
Freigeben: 2016-06-24 11:55:15
Original
1235 Leute haben es durchsucht

题目地址:http://codeforces.com/problemset/problem/374/C

用dp[i][j]代表第i行第j列的数可以走的最大距离。为-1时表示未走过,将走过但未走完的暂时标记为INF。这样假如有环的时候就返回INF了。然后用dfs搜。

代码如下:

#include <iostream>#include <cstdio>#include <string>#include <cstring>#include <stdlib.h>#include <math.h>#include <ctype.h>#include <queue>#include <map>#include <set>#include <algorithm>using namespace std;#define LL __int64const int INF=0x3f3f3f3f;char mp[1001][1001], str[]="DIMA";int dp[1001][1001];int jx[]={0,0,1,-1};int jy[]={1,-1,0,0};int n, m;int dfs(int x, int y, int tmp){    if(dp[x][y]!=-1) return dp[x][y];    dp[x][y]=INF;    int i, a, b, t=0;    tmp=(1+tmp)%4;    for(i=0;i=0&&a<n>=0&&b<m t="max(t,dfs(a,b,tmp));" dp return main int i j max1="0;" scanf for memset if puts dima else>=INF)    {        puts("Poor Inna!");    }    else        printf("%d\n",max1/4);    return 0;}</m></n></algorithm></set></map></queue></ctype.h></math.h></stdlib.h></cstring></string></cstdio></iostream>
Nach dem Login kopieren


Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage