1 条题解
-
2
很简单的深搜。不用写计算器,能偷鸡
#include<bits/stdc++.h> using namespace std; int n; int a[15]; int t[15]; int s; int ans; void work(int dep) { if(dep==n) { s=0; for(int i=1;i<=n;i++) { s+=t[i]; } if(s==24) { ans++; } return; } t[dep+1]=a[dep+1]; work(dep+1); t[dep+1]=-a[dep+1]; work(dep+1); t[dep+1]=t[dep]*a[dep+1]; t[dep]=0; work(dep+1); } int main() { //freopen(".in","r",stdin); //freopen(".out","w",stdout); cin>>n; for(int i=1;i<=n;i++) { cin>>a[i]; t[i]=a[i]; } work(1); cout<<ans<<endl; return 0; }
- 1
信息
- ID
- 780
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 3
- 标签
- 递交数
- 25
- 已通过
- 17
- 上传者