travel
懒得写是YOJ2.0的题了,都差不多
摸鱼摸的有点久,这个代码是周六晚上敲的
北方开始变冷了,几乎快跌破0°了
又是一个递归题,感觉递归做的好多
代码如下:
#include<stdio.h>
void ra(int x, int y, int num);
int travel[9][9];
int occ[9][9];
int m, n, max = -1000000;
int main(void)
{
scanf("%d%d", &n, &m);
for(int i = 1; i <= n; i++)
for(int j = 1; j <= m; j++)
scanf("%d", &travel[i][j]);
ra(1, 1, 0);
printf("%d", max);
return 0;
}
void ra(int x, int y, int num)
{
occ[x][y] = 1;
int n_n = num + travel[x][y];
if(x == n)
if(y == m) max = (max > n_n) ? max : n_n;
else ra(x, y + 1, n_n);
else
{
ra(x + 1, y, n_n);
if(y - 1 > 0 && occ[x][y - 1] != 1) ra(x, y - 1, n_n);
if(y + 1 <= m && occ[x][y + 1] != 1) ra(x, y + 1, n_n);
}
occ[x][y] = 0;
return;
}
学着别人的代码写了写,是不是简洁许多了呢?
得赶紧在经济学原理上课前试着敲一敲快速幂
bye