阶乘之和

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

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

输入
第一行有一个整数0<m<100,表示有m组测试数据;
每组测试数据有一个正整数n<1000000;
输出
如果符合条件,输出Yes,否则输出No;
样例输入
2
9
10
样例输出
Yes
No
方法一:
#include <stdio.h>
#include <string.h>
int main()
{  int m;  scanf("%d",&m);  int f[11];  memset(f,0,sizeof(f));  //初始化 f[1]=1;  for(int i=2;i<11;i++)  f[i]=f[i-1]*i;  while(m--){  int n;  scanf("%d",&n);  int i;  int aim=n;  int flag=10;  for(i=flag;i>0;i--)//从最大的开始减 {  if(aim>=f[i]){  flag=i-1;     aim=aim-f[i];            }  }  if(aim==0) printf("Yes\n");  else if(aim!=0) printf("No\n");
}  return 0;
}  
方法二:
#include<stdio.h>
int main()
{int m;scanf("%d",&m);int k[9] = {1,2,6,24,120,720,5040,40320,362880};while(m--){int n;scanf("%d",&n);bool f=false;for(int i=8;i>=0;--i){if(n>=k[i]&&n>0)n-=k[i];if(n==0)f=true;}if(f)printf("Yes\n");elseprintf("No\n");}return 0;
}
算出阶乘,从不大于n的最大阶乘开始想减,如果结果为0;就是符合的。

nyoj91 阶乘之和相关推荐

  1. NYOJ91 阶乘之和 与全加器设计Verilog HDL

    阶乘之和 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描述 给你一个非负数整数n,判断n是不是一些数(这些数不允许重复使用,且为正数)的阶乘之和,如9=1!+2!+3!,如 ...

  2. 贪心算法之——阶乘之和(nyoj91)

    阶乘之和 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描述 给你一个非负数整数n,判断n是不是一些数(这些数不允许重复使用,且为正数)的阶乘之和,如9=1!+2!+3!,如 ...

  3. 用Java求一个三位数,该三位数是与其每位数字的阶乘之和

    题目:一个三位数,该三位数与其每位数字的阶乘之和 代码: public class TestSum {public static void main(String[] args) {int a, b, ...

  4. HPU 第三次积分赛:阶乘之和(水题)

    阶乘之和 描述 对于整数pp,给出以下定义 p=x_{1}!+x_{2}!+x_{3}!+...+x_{q}!(x_{i}<x_{j}for\ all\ i<j )p=x1​!+x2​!+ ...

  5. C语言 1A gt $20,C语言输出 1到20 的阶乘之和

    除了调用库,绝对找不到比这更精简的代码了. #include #include long long getdata(long long n){ long long sum = 1; while(n){ ...

  6. P1009 [NOIP1998 普及组] 阶乘之和-2022.02.01(python3实现)

    [NOIP1998 普及组] 阶乘之和 - 洛谷 """P1009 [NOIP1998 普及组] 阶乘之和-2022.02.01(python3实现) https://w ...

  7. 信息学奥赛一本通 1173:阶乘和 | OpenJudge NOI 1.6 15 | 洛谷 P1009 [NOIP1998 普及组] 阶乘之和

    [题目链接] ybt 1173:阶乘和 注:一本通上这题,应该把n≤50n\le50n≤50当做n≤100n\le100n≤100来看 OpenJudge NOI 1.6 15:阶乘和 洛谷 P100 ...

  8. 信息学奥赛一本通 2033:【例4.19】阶乘之和

    [题目链接] ybt 2033:[例4.19]阶乘之和 [题目考点] 1. 同余定理 根据同余定理,有: (a∗b)%m=(a%m∗b%m)%m(a*b)\%m = (a\%m * b\%m)\%m( ...

  9. 信息学奥赛一本通(2033:【例4.19】阶乘之和)

    2033:[例4.19]阶乘之和 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 1896     通过数: 313 [题目描述] 输入nn,计算S=1!+2!+3 ...

最新文章

  1. 微信上线新功能:再也不怕好友赖账了
  2. python接口自动化根据请求接口类型进行封装
  3. QTP之对测试用例的自动化过程的分解
  4. python绘制3d动态模型_怎么用python把*.obj文件里面的3D模型特征提取出来?
  5. SQL(基于MySQL)—— 常用查询语句
  6. TypeScript声明文件
  7. cmake使用教(一)多目录下多个文件的构建
  8. Xmind模板文档分享——商务模板(2)
  9. 商务周刊封面:别了,摩托罗拉
  10. 几个国外广告联盟介绍
  11. ltib常用命令详解
  12. 想要学习丙烯画,这些地方要注意了~
  13. 亲自官宣!阿里副总裁贾扬清离职,或投身AI架构创业
  14. 科研伦理与学术规范 期末考试2(40题)
  15. 【转】三款免费的在线项目管理工具
  16. kotlin与Java之间的骚操作:kotlin一键调用java
  17. 首批最佳骑行路线揭晓
  18. 如何优雅地下载计算机领域英文文献--dblp的食用方法(多图警告)
  19. Ubuntu 18.04 网易云音乐无法打开问题解决方案
  20. 追问上交所资金校验缺失系统老化

热门文章

  1. java类内部的变量
  2. soap接口怎么不返回tuple python_Python 中的接口
  3. python# 完成“剪刀石头布游戏”:
  4. Linux Deepin 版本大全,Deepin下载-Deepin linuxv20.0 官方版下载-6188手游网
  5. Linux: shell命令 eval (有图有代码有真相!!!)
  6. 字符设备驱动基础篇1——简单的驱动源码分析
  7. 线程属性 pthread_attr_t
  8. 关于SQL数据库中cross join 和inner join用法上的区别?
  9. Mysql索引机制B+Tree
  10. 消息中间件核心实体(1)