zoukankan      html  css  js  c++  java
  • 阶乘之和

    阶乘之和

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

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

    输入
    第一行有一个整数0<m<100,表示有m组测试数据;
    每组测试数据有一个正整数n<1000000;
    输出
    如果符合条件,输出Yes,否则输出No;
    样例输入
    2910
    样例输出
    YesNo
    上传者

    李剑锋

    01.#include<stdio.h>
    02.int main()
    03.{
    04.int N;
    05.int k[9] = {1,2,6,24,120,720,5040,40320,362880};
    06.scanf("%d",&N);
    07.while(N--)
    08.{
    09.int n;
    10.bool flag=false;
    11.scanf("%d",&n);
    12.for(int i=8;i>=0;--i)
    13.{
    14.if(n>=k[i]&&n>0)
    15.n-=k[i];
    16.if(n==0)
    17.flag=true;
    18.}
    19.if(flag)
    20.printf("Yes ");
    21.else
    22.printf("No ");
    23.}
    24.return 0;
    25. 
    26.}
  • 相关阅读:
    topcoder srm 445 div1
    topcoder srm 440 div1
    topcoder srm 435 div1
    topcoder srm 430 div1
    topcoder srm 400 div1
    topcoder srm 380 div1
    topcoder srm 370 div1
    topcoder srm 425 div1
    WKWebView强大的新特性
    Runtime那些事
  • 原文地址:https://www.cnblogs.com/leishitou/p/5436208.html
Copyright © 2011-2022 走看看