贪心算法-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;  
}  

相关内容

热门资讯

3月27日证券ETF富国(51... 3月27日,证券ETF富国(515850)涨0.70%,成交额2747.39万元。当日份额增加150...
3月27日电子ETF(1599... 3月27日,电子ETF(159997)涨0.19%,成交额3978.09万元。当日份额增加300.0...
日本央行一位审议委员:若伊朗战...   根据周一公布的日本央行3月19日结束的政策会议意见摘要, 一位央行审议委员表示,如果中东冲突持续...
3月27日医药ETF嘉实(51... 3月27日,医药ETF嘉实(515960)涨3.45%,成交额823.56万元。当日份额减少100....
3月27日上证指数ETF国泰(... 3月27日,上证指数ETF国泰(510760)涨1.03%,成交额1.97亿元。当日份额减少3900...