http://oj.ecustacm.cn/problem.php?id=1285
dfs不是太会写,所以用这个简单但是快的方法了。
#include<cstring>
#include<cstdio>
#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
int b[15]={1,2,3,4,5,6,7,8,9,10,11,12,13};
int ans=0;
int main(void)
{
do
{
if(b[0]+b[1]==b[2])
if(b[3]-b[4]==b[5])
if(b[6]*b[7]==b[8])
if( ( b[9]/b[10]==b[11] )&& (b[9]%b[10]==0) )
ans++;
}while(next_permutation(b,b+13));
printf("%d\n",ans);
//cout<<64;
return 0;
}