大佬求助,只过了三个测试点,感谢!!!
查看原帖
大佬求助,只过了三个测试点,感谢!!!
689503
XJ0208楼主2022/4/5 21:06
#include <iostream>
#include <algorithm>
using namespace std;
int s[11],d[11];	
int n;
int ans=999999999;
int f[11][11];
void dfs(int i,int k1,int k2){
	if(i==n) {
		ans=min(ans,abs(k1-k2));
		return;
	}
	dfs(i+1,k1*s[i+1],k2+d[i+1]);
	dfs(i+1,k1*s[i+1],k2);
	dfs(i+1,k1,k2+d[i+1]);
	dfs(i+1,k1,k2);
}
int main(){
	scanf("%d",&n);
	for (int i=1;i<=n;i++){
		scanf("%d %d",&s[i],&d[i]);
	}
	dfs(1,s[1],d[1]);
	printf("%d",ans);
	return 0;
}
2022/4/5 21:06
加载中...