zoukankan      html  css  js  c++  java
  • 给一个非负整数,判断这个数是不是相互不同的非负整数的阶乘的和。

    此为别的文章看到的   https://www.jianshu.com/p/ca4d745e7d57

    题目:  给一个非负整数,判断这个数是不是相互不同的非负整数的阶乘的和。如6 = 3!;7 = 3! + 1!;但5 不是相互不同的非负整数的阶乘的和。

    int main(void)
    {
    	int num;
    	printf("请输入一个非负整数:");
    	scanf("%d", &num);
    	int i = 1;
    	int flag = 1;
    	while (num>1)
    	{
    		if (((num / i)*i) == num)  //判断是否可以整除 i
    			num /= i;
    		else
    		{
    			num--;
    			if (((num / i)*i) == num)   // 连续两次都不能整除,就不是了
    				num /= i;
    			else
    			{
    				flag = 0;
    				break;
    			}
    		}
    		i++;
    	}
    	if (flag)
    		printf("Yes
    ");
    	else
    		printf("No
    ");
    
    	system("pause");
    	return 0;
    }
    

      

  • 相关阅读:
    抽象工厂模式
    工厂方法模式
    简单工厂模式
    Zuul
    Turbine
    Hystrix
    Feign
    Ribbon
    Eureka
    @MappedSuperclass的作用
  • 原文地址:https://www.cnblogs.com/asdfknjhu/p/12348865.html
Copyright © 2011-2022 走看看