你拿了什么啊??
by Ew_Cors @ 2022-01-20 13:03:02
@[tymRocket](/user/559847)
```
#include<bits/stdc++.h>
using namespace std;
int s[20][20];
int ans = -1e9;
int n;
void dfs(int x , int y , int x2 , int y2 , int sume){
if(x == n && y == n){
ans = max(ans , sume);
return ;
}
if(x < n){
if(x2 < n) dfs(x + 1 , y , x2 + 1 , y2 , sume + s[x + 1][y] + (x + 1 != x2 + 1 || y != y2) * s[x2 + 1][y2]);
if(y2 < n) dfs(x + 1 , y , x2 , y2 + 1 , sume + s[x + 1][y] + (x + 1 != x2 || y != y2 + 1) * s[x2][y2 + 1]);
}
if(y < n){
if(x2 < n) dfs(x , y + 1 , x2 + 1 , y2 , sume + s[x][y + 1] + (x != x2 + 1 || y + 1 != y2) * s[x2 + 1][y2]);
if(y2 < n) dfs(x , y + 1 , x2 , y2 + 1 , sume + s[x][y + 1] + (x != x2 || y + 1 != y2 + 1) * s[x2][y2 + 1]);
}
}
int main(){
cin >> n;
while(true){
int a , b , c;
cin >> a >> b >> c;
if(a == 0 && b == 0 && c == 0){
break;
}
s[a][b] = c;
}
dfs(1 , 1 , 1 , 1 , s[1][1]);
cout << ans;
return 0;
}
```
by coldy_rainy @ 2022-01-20 13:06:20
@[tymRocket](/user/559847)
void类型能return一个值?
```
if(x < n){
if(x2 < n) return dfs(x + 1 , y , x2 + 1 , y2 , sume + s[x + 1][y] + (x + 1 != x2 + 1 || y != y2) * s[x2 + 1][y2]);
if(y2 < n) return dfs(x + 1 , y , x2 , y2 + 1 , sume + s[x + 1][y] + (x + 1 != x2 || y != y2 + 1) * s[x2][y2 + 1]);
}
if(y < n){
if(x2 < n) return dfs(x , y + 1 , x2 + 1 , y2 , sume + s[x][y + 1] + (x != x2 + 1 || y + 1 != y2) * s[x2 + 1][y2]);
if(y2 < n) return dfs(x , y + 1 , x2 , y2 + 1 , sume + s[x][y + 1] + (x != x2 || y + 1 != y2 + 1) * s[x2][y2 + 1]);
```
void是个空类型,不返回任何值。这里明显不能用return dfs(),把return去掉即可
by coldy_rainy @ 2022-01-20 13:08:34
@[tymRocket](/user/559847)
**不过还是有个TLE,建议优化**
by coldy_rainy @ 2022-01-20 13:09:57
@[penhaochen](/user/526755) void类函数可以return void类的函数,视为使用了return后面的函数
by GBen @ 2022-01-20 13:22:30
@[GBen](/user/560116)
当在这道题中,去掉return可以过样例提交后还A了#1,#3,#4,#5测试点,也不知道为什么。。。
[就像这样](https://www.luogu.com.cn/record/67258814)
by coldy_rainy @ 2022-01-20 13:27:35
@[GBen](/user/560116)
Oh,如果加了return,那么这个函数就会停止,就不能达到dfs的递归效果,那么ans就不会被赋值,始终为0,因此复制样例后只会输出0
一一一一一一一一一一一一一一一本蒟蒻的拙见
by coldy_rainy @ 2022-01-20 13:33:47
@[penhaochen](/user/526755) 没错,我看了源程序总共只递归了15次,而正解有1121次
by GBen @ 2022-01-20 17:50:51