zoukankan      html  css  js  c++  java
  • 分析code

     1 using System;  //跟系统说明一下可能会用到这个dll里面的东西
     2 using System.Collections.Generic;  //引用集合类命名空间
     3 using System.Text;  //引入文本操作命名空间
     4    
     5 namespace FindTheNumber  //命名空间
     6 {  
     7      class Program  
     8      {  
     9           static void Main(string[] args)  //虚拟机调用程序入口
    10           {  
    11                int [] rg =                //定义30个数组
    12                {2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,  
    13                18,19,20,21,22,23,24,25,26,27,28,29,30,31};  
    14    
    15                for(Int64 i = 1; i < Int64.MaxValue; i++)  //inter表示inter64位 范围最大为inter64.MaxValue=9,233,372,036,854,775,087 
    16                {                                         //不能整除2~31的相邻2个数,却能整除其余的数
    17                     int hit = 0;  
    18                     int hit1 = -1;  
    19                     int hit2 = -1;  
    20                     for (int j = 0; (j < rg.Length) && (hit <= 2); j++)  //
    21                     {  
    22                           if((i % rg[j]) != 0)  
    23                           {  
    24                                hit++;  
    25                                if(hit == 1)  
    26                                {  
    27                                     hit1 = j;  
    28                                }  
    29                                else if (hit == 2)  
    30                                {  
    31                                     hit2 = j;  
    32                                }  
    33                                else  
    34                                     break;   
    35    
    36                           }  
    37                     }  
    38    
    39                     if((hit == 2) && (hit1 + 1 == hit2))  
    40                     {  
    41                           Console.WriteLine("found {0}", i);   //  占位符i的位置输给found{0} 
    42                     }  
    43    
    44                }  
    45           }  
    46      }  
    47 }   

    1.是不能整除2至31的相邻两个数却能整除其他所有数的数

    2.存在。。。2*2*2*3*3*3*5*5*7*11*13*19*23*29*31=2123581660200

    3. 9min

    4.使用多线程分别运行其中的一部分将会提高好几倍

  • 相关阅读:
    C语言 · 新生舞会
    C语言 · 集合运算
    C语言 · 字符串的展开
    C语言 · 学做菜
    C语言 · 最长公共子序列 · 最长字符序列
    C语言 · 复数求和
    C语言 · 扶老奶奶过街
    C语言 · 删除重复元素
    1-3
    1-4
  • 原文地址:https://www.cnblogs.com/menghuide/p/5299405.html
Copyright © 2011-2022 走看看