zoukankan      html  css  js  c++  java
  • HDOJ3782(xxx定理)

    /* Note:Your choice is C IDE */
    #include <stdio.h>
    #include<time.h>
    #include<stdlib.h>
    int vis[1005];
    int num;
    void fun()
    {
    	int i,j;int cnt=0;
    	vis[1]=0;
    	for(j=2;j<=1005;j++)
    	{
    		/*
    		这道题没什么写的,第一次的代码输入不了数据,应该是死循环问题;
    		仔细检查后发现,在这个循环每次变小了控制变量的值 ,加上 i=j
    		就ok啦
    		*/ 
    		cnt=0;i=j;
    		while(i!=1)
    		{
    			if(i&1)
    			{
    				i=3*i+1;
    				i>>=1;
    				cnt++;
    			}
    			else
    			{
    				i>>=1;
    				cnt++;
    			}
    		}
    				vis[j]=cnt;
    	}
    }  			
    int main()
    {
    	int clock1,clock2;
    	clock1=clock(); 
    	fun();
        scanf("%d",&num);
    	printf("%d\n",vis[num]);
    	clock2=clock();
     	printf("%d\n",clock2-clock1);
      	system("pause");
       	return 0;    
    }
    
  • 相关阅读:
    POJ 1061
    hihocoder 1330
    HDU 1525
    UVALive 3938
    POJ 2528
    HDU 1754
    《ACM-ICPC程序设计系列 数论及其应用》例题个人答案记录
    URAL 1277
    HDU 3746
    HDU 2087
  • 原文地址:https://www.cnblogs.com/hxsyl/p/2604770.html
Copyright © 2011-2022 走看看