站外题求助
  • 板块灌水区
  • 楼主__Q_w_Q__
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/1/22 10:58
  • 上次更新2024/1/22 11:31:09
查看原帖
站外题求助
933380
__Q_w_Q__楼主2024/1/22 10:58

题

看起来像DP 但数据范围离谱

数据范围

DFS代码如下(方程应该没问题,但如果进一步优化成记忆化的话空间会炸)

#include<bits/stdc++.h>
using namespace std;
int best = -1e9,n;
struct node{
	int x,y;
}a[10010];
int abs(int x){
	if(x<0) x=-x;
	return x;
}
void dfs(int i,int j,int sum){
	if(i>n){
		best = max(abs(sum)+abs(j),best); 
		return ;
	}
	dfs(i+1,j,sum);
	dfs(i+1,j-a[i].x,sum+a[i].y);
}
int main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i].x>>a[i].y;
	}
	dfs(1,0,0); 
	cout<<best;
	return 0;
}
2024/1/22 10:58
加载中...