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

相关内容

热门资讯

A500ETF东财(15938... 1月29日,A500ETF东财(159380)开盘涨0.00%,报1.382元。A500ETF东财(...
洛阳钼业股价涨5.21%,泰康... 1月29日,洛阳钼业涨5.21%,截至发稿,报28.28元/股,成交25.17亿元,换手率0.51%...
科创板人工智能ETF(5889... 1月29日,科创板人工智能ETF(588930)开盘跌0.77%,报1.808元。科创板人工智能ET...
洛阳钼业股价涨5.21%,博道... 1月29日,洛阳钼业涨5.21%,截至发稿,报28.28元/股,成交25.59亿元,换手率0.52%...
A500ETF永赢(15938... 1月29日,A500ETF永赢(159386)开盘涨0.00%,报1.328元。A500ETF永赢(...