zoukankan      html  css  js  c++  java
  • friend(hdoj 1719)

    Friend

    Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
    Total Submission(s): 2207    Accepted Submission(s): 1108


    Problem Description
    Friend number are defined recursively as follows.
    (1) numbers 1 and 2 are friend number;
    (2) if a and b are friend numbers, so is ab+a+b;
    (3) only the numbers defined in (1) and (2) are friend number.
    Now your task is to judge whether an integer is a friend number.
     

    Input
    There are several lines in input, each line has a nunnegative integer a, 0<=a<=2^30.
     

    Output
    For the number a on each line of the input, if a is a friend number, output “YES!”, otherwise output “NO!”.
     

    Sample Input
    3 13121 12131
     

    Sample Output
    YES! YES! NO!
     

    Source
     

    Recommend
    lcy   |   We have carefully selected several similar problems for you:  1905 2082 1073 1715 1257


    /*刚刚看到这道题的时候一心只想着打表,但是试了几次都超时,没想到有这种规律....
    c=ab+b+a=b(a+1)+b=(b+1)(a+1)-1,c+1=(b+1)(a+1),所以输入的数加一之后,它只要是2或者3的倍数就可以*/
    #include<stdio.h>
    #include<string.h> 
    int main()
    {
    	int n;
    	while(scanf("%d",&n)!=EOF)
    	{
    		if(n<1)
    		{
    			printf("NO!
    ");
    		}
    		else
    		{
    			n=n+1;
    			while(n%2==0)
    			n=n/2;
    			while(n%3==0)
    			n=n/3;
    			if(n==1)
    			printf("YES!
    ");
    			else printf("NO!
    ");
    		}
    	}
    }

     
  • 相关阅读:
    Python函数学习——作用域与嵌套函数
    Python函数学习——初步认识
    python-安装,设置环境变量(win10)
    python-正则表达式
    python-时间
    python-集合
    python-模块
    Python-sys模块,异常
    python-自定义异常,with用法
    python-异常
  • 原文地址:https://www.cnblogs.com/playboy307/p/5273818.html
Copyright © 2011-2022 走看看