#include <stdio.h> int a[101],b[101]; int c[101]; int n,m,k,sum,cou=0; void dfs(int step) { int i,j,x; if(step==11) { sum=10; for(i=1;i<=10;i++) { if(a[i]==0) { sum-=i; // if(sum<0) // sum=0; } else sum*=2; } // printf("%d \n\n",sum); if(sum<=100&&sum>=0) { c[sum]++; } } else { for(i=0;i<=1;i++) { a[step]=i; dfs(step+1); } } } int main() { scanf("%d",&n); int i,j,cou1; dfs(1); while(n--) { scanf("%d",&m); if(c[m]==0) printf("-1\n"); else printf("%d\n",c[m]); } return 0; }
0.0分
4 人评分
C语言程序设计教程(第三版)课后习题1.5 (C++代码)浏览:1094 |
printf基础练习2 (有点不明白)浏览:844 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:613 |
WU-蓝桥杯算法提高VIP-Quadratic Equation (C++代码)浏览:1752 |
WU-拆分位数 (C++代码)浏览:783 |
printf基础练习2 (C语言代码)浏览:618 |
1024题解浏览:808 |
前10名 (C语言代码)浏览:727 |
矩阵转置 (C语言代码)浏览:783 |
小O的图案 (C语言代码)浏览:915 |