题目:
思路:N个数算24,必有两个数要先算。这两个数算的结果和剩余n-2个数就构成了n-1个数求24的问题。
枚举先算的两个数,以及这两个数的运算方式(+-*/)
边界条件:一个数等于24
注意:浮点数比较相等,不能用==,而是看两浮点数差值的绝对值是否小于某个数
#include <iostream>
#include<cmath>
using namespace std;
double a[5];//输入5个数
#define EPS 1e-6 //定义EPS 10的负六次方
bool isZero(double x)//看差值的绝对值是不是小于EPS这个数
{
return fabs(x) <= EPS;
}
bool count24(double a[], int n)