Run ID | 作者 | 问题 | 语言 | 测评结果 | Time | Memory | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|
468 | 关清声 | 求和比较 | C++ | Accepted | 0 MS | 264 KB | 710 | 2022-08-21 17:09:07 |
#include<iostream> #include<algorithm> #include<cmath> using namespace std; int main() { int n,m,sum=0; cin>>n>>m; int a[n],b[n]; for(int i=1;i<=n;i++) { a[i]=i; } for(int i=1;i<(1<<n);i++) { int s[30],t=i; for(int l=1;l<=n;l++) { b[l]=a[l]; } for(int l=1;l<n;l++) { s[l]=0; } int l=n; while(t!=0) { if(t%2==1) { s[l]=b[l]; b[l]=0; } else { s[l]=0; } t/=2; l--; } int t1=0,t2=0; for(l=1;l<=n;l++) { t1+=b[l]; t2+=s[l]; } if(t1>=t2) { if(t1-t2==m) { sum++; } } else { if(t2-t1==m) { sum++; } } } cout<<sum/2; return 0; }