关于第一篇题解
查看原帖
关于第一篇题解
574884
Kasumi_Hakurei楼主2023/8/28 22:52

为什么0x7f不能用 我平时初始化数组都是用0x7f啊 但是好像直接给int就变成只有127

#include <iostream>
#include <cmath>
#include <algorithm>
#define MAXN 12
using namespace std;

int s[MAXN], b[MAXN];
int n, ans = 0x7f; //改成2e8就过了	

void Dfs(int num, int nowS, int nowB)
{
	if(num > n)
	{
		if(nowS != 1 && nowB != 0)	//检查两种配料都放了
			ans = min(abs(nowS - nowB), ans);
		return;
	}
	Dfs(num + 1, nowS*s[num], nowB+b[num]);		//加当前配料
	Dfs(num + 1, nowS, nowB);		//不加
}

int main()
{
	cin >> n;
	for (int i = 1;i <= n;++i)
		cin >> s[i] >> b[i];
	Dfs(1,1,0);	//Dfs?启动!!!
	cout << ans;
	return 0;
}
2023/8/28 22:52
加载中...