求优化
查看原帖
求优化
559847
Ferm_Tawn楼主2022/1/21 12:38

dfsdfs做法咋优化?
不会dpdp只好包搜了
40分代码40分代码

#include<bits/stdc++.h>
using namespace std;
unsigned long long a[1010];
unsigned long long ans;
unsigned long long n , m , sumw;
void dfs(unsigned long long r , unsigned long long l , unsigned long long sume , unsigned long long step){
	if(r > l){
		sumw = max(sumw , sume);
		return ;
	} 
	dfs(r + 1 , l , sume + a[r] * (1 << step) , step + 1);
	dfs(r , l - 1 , sume + a[l] * (1 << step) , step + 1);
}
int main(){
	
	cin >> n >> m;
	for(unsigned long long i = 1 ; i <= n ; i++){
		for(unsigned long long j = 1 ; j <= m ; j++){
			cin >> a[j];
		}
		sumw = 0;
		dfs(1 , m , 0 , 1);	
		ans += sumw;
	}
	cout << ans;
	return 0;
}
2022/1/21 12:38
加载中...