贪心算法-nyoj-91-阶乘之和
创始人
2024-03-18 11:02:56

阶乘之和

时间限制:3000 ms  |  内存限制:65535 KB难度:3

描述

给你一个非负数整数n,判断n是不是一些数(这些数不允许重复使用,且为正数)的阶乘之和,如9=1!+2!+3!,如果是,则输出Yes,否则输出No;

输入

第一行有一个整数0 每组测试数据有一个正整数n<1000000;

输出

如果符合条件,输出Yes,否则输出No;

样例输入

2
9
10

样例输出

Yes
No

地址点击打开链接

思路:把0~9的阶乘打出来      有上往下进行贪心

#include   
int main()  
{  int u,n;  int sum;  int dot;  int a[10]={0,1,2,6,24,120,720,5040,40320,362880};  scanf ("%d",&u);  while (u--)  {  scanf ("%d",&n);  sum=n;  dot=0;      //未输出   for (int i=9;i>=1;i--)  {  if (sum>=a[i])  {  sum-=a[i];  if (!sum)  {  printf ("Yes\n");  dot=1;  break;  }  }  else  continue;  }  if (!dot)  printf ("No\n");  }  return 0;  
}  

相关内容

热门资讯

不再烧钱换规模后,VC锚定AI... 近日,全球化AI互动娱乐平台海艺(SeaArt)宣布完成超亿元B轮融资。本轮融资由视觉中国、华盖创赢...
澜起科技股价涨5.01%,融通... 7月24日,澜起科技涨5.01%,截至发稿,报236.80元/股,成交97.59亿元,换手率3.69...
澜起科技股价涨5.01%,长江... 7月24日,澜起科技涨5.01%,截至发稿,报236.80元/股,成交97.80亿元,换手率3.70...
华蓝集团涨2.03%,成交额2... 7月24日,华蓝集团盘中上涨2.03%,截至13:13,报19.10元/股,成交2867.78万元,...