help!
查看原帖
help!
1023737
yi_ran楼主2023/7/9 17:51
#include <iostream>
#include <cmath>
using namespace std; 
const int MAXN=15;
int s[MAXN],b[MAXN],n,ans=0x7f;
void dfs(int step,int x,int y)
{
	if(step>n)
	{
		if(x==1&&y==0)
			return;
		ans=min(ans,abs(x-y));
		return;
	}
	dfs(step+1,x*s[step],y+b[step]);
	dfs(step+1,x,y);
}
int main()
{
	cin>>n;
	for(int i=1; i<=n; i++)
		cin>>s[i]>>b[i];
	dfs(1,1,0);
	cout<<ans;
	return 0;
}

有问题吗?

2023/7/9 17:51
加载中...