题目描述
有些数可以表示成若干个不同阶乘的和。例如,9=1!+2!+3!。小明对这些数很感兴趣,所以他给你一个正整数n,想让你告诉他这个数是否可以表示成若干个不同阶乘的和。

输入
输入包含多组测试数据。每组输入为一个非负整数n(n<=1000000),当n为负数时,输入结束。

输出
对于每组输入,如果n可以表示成若干个不同阶乘的和,则输出YES,否则输出NO。

样例输入
9
-1

样例输出
YES


和HDU2021类似,只不过需要先算出小于1000000的最大的阶乘

#include<stdio.h>
int main()
{int a[11];a[0]=1;int n,i;for(i=1;i<11;i++){a[i]=1;int s=i;for(int j=s;j>0;j--){a[i]*=j;}}while(scanf("%d",&n)!=EOF){int flag=0;if(n<0) break;if(n==0) printf("NO\n");else{for(i=9;i>=0;i--){if(n>=a[i]){n-=a[i];}if(n==0){flag=1;break;} }if(flag!=0) printf("YES\n");else printf("NO\n");flag=0;}}return 0;
}

转载于:https://www.cnblogs.com/Friends-A/p/9309079.html

Codeup1085: 阶乘的和相关推荐

  1. 一道有意思的阶乘计算题

    文章目录 1 题目描述 2 分析 2.1 基本做法 1 题目描述 输入n, 计算 下面公式的末六位(不含前导0).n<=10^6,n!表示前n个正整数之积 S=1!+2!+3!+4!+5!+.. ...

  2. 172. 阶乘后的零

    给定一个整数 n,返回 n! 结果尾数中零的数量. 示例 1: 输入: 3 输出: 0 解释: 3! = 6, 尾数中没有零. 示例 2: 输入: 5 输出: 1 解释: 5! = 120, 尾数中有 ...

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

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

  4. 2015湖南省省赛 阶乘除法 暴力

    阶乘除法 Time Limit:5000MS     Memory Limit:65535KB     64bit IO Format: NBUT 1643 Description 输入两个正整数 n ...

  5. python练习题(python之“求一个数的阶乘并求结果中从后向前数第一个不为0(零)的数” 等)

    实验环境:python2.7 题目1:python之"求一个数的阶乘并求结果中从后向前数第一个不为0(零)的数" 程序: import math def factorial(n): ...

  6. oracle求某个数的阶乘,Oracle SQL实现阶乘的几个方法

    Oracle SQL实现阶乘的几个方法 regonly1 2010-06-07 16:24:39 Linux操作系统 第一个:字符串叠加运算法 原理是先将要相乘的数用字符串拼接起来,然后将拼接的逗号替 ...

  7. 求n!(n的阶乘)和1!+2!+....n! (阶乘求和) ----C语言实现

    不少小伙伴搞不清楚n!和n!求和,下面我就列出运用for循环实现求解的简洁方法,一步一步慢慢分析都能搞懂噢~ 1.求n! 算法思想:首先要清楚阶乘定义,所谓 n 的阶乘,就是从 1 开始乘以比前一个数 ...

  8. 阶乘分解质因数[经典题组合数学枚举质因子]

    引入问题: 给定整数NNN,试把阶乘 N!N!N! 分解质因数,按照算术基本定理的形式输出分解结果中的 pip_ipi​ 和 cic_ici​即可. N!N!N!分解质因数后的结果,共若干行,每行一对 ...

  9. 50的阶乘用c语言编写,求10000的阶乘(c语言代码实现)

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* 程序功能:计算一个正整数n的阶乘,目前最大能运算10000的阶乘,可秒杀. 程序意义:加强自己对于大数的处理. 说明:此程序对乘法和除法还未做任何优 ...

最新文章

  1. 塞尔达传说顺序_编码《塞尔达传说》克隆图例
  2. Redis 缓存击穿(失效)、缓存穿透、缓存雪崩怎么解决?
  3. 用Python获取Linux资源信息的三种方法
  4. python程序狮,编程狮app下载
  5. linux网卡Bond模式
  6. Spring构造注入重载
  7. 在Linux中挂载Windows端共享权限设定方法和出现报错的解决办法
  8. Java中的Properties类详解Properties配置文件
  9. 【TensorFlow-windows】扩展层之STN
  10. Jquery中如何获取元素的文本,值,属性和内容
  11. MongoDB小型文档型数据库使用
  12. for里面嵌套if_求求你们了,别再写满屏的 if/ else 了!
  13. RN开发环境搭建-window
  14. HTML5从入门到精通笔记
  15. 4、Unity商店,导入资源
  16. 如何在计算机修改wifi密码,wifi修改密码,教您电脑怎么修改wifi密码
  17. 架构真经 | 那些年,我们踩过的缓存坑
  18. [连载2]互联网究竟是什么怪物…他们不愿公开真正秘密...
  19. 软件编程c语言5级,全国青少年软件编程等级考试标准(c语言1级-10级)-20190927.pdf...
  20. 华大单片机HC32L130F8UA 串口烧录程序

热门文章

  1. oracle用游标drop多个表,Oracle Procedure中使用游标cursor更新多表?
  2. java transient 应用场景_关于java:transient关键字的用途是什么以及何时使用它?...
  3. 修改telnet提示并非_热血传奇:老玩家揭秘!这4个地方都被盛大修改过,第3个80%都想不到...
  4. Python Base64
  5. C++ queue
  6. psql 时间日期操作符和函数
  7. Java Web学习总结(4)——HttpServletResponse对象入门
  8. Jsp学习总结(1)——JSP九大内置对象和四种属性范围解读
  9. android 玩pc游戏,Shield掌机试玩: Android系统 可玩PC单机游戏
  10. python特性描述_详解 Python 最优雅的特性之一 — 描述符