醜い51数 - のオファーを受賞

タイトル説明

これは、素因数2、3及び5の数だけが醜い(醜い数)と呼ばれている含まれています。それは7個の素因数が含まれているため、例えば6,8は、14醜いではなく、いくつかあります。伝統的に、我々は最初の醜い数として1を持っています。N醜い多数シーケンスを昇順シーク。
 
  
1  // 使用トラバース決意方法
2  クラスSolution01 {
 3。 公共4。     INT GetUglyNumber_Solution(INT インデックス){
 5。         IF(指数< 1戻り 0 ;
 6。         INT CNT = 0 ;
 7。         ためINT I = 1 ; CNT <インデックス; ++ I)
 8。         {
 9。             IF (isChouShu(I))
 10                  CNT ++ ;
 11              IF(CNT == インデックス)
12                  リターンI;
13          }
 14      }
 15      BOOL isChouShu(INT NUM)
 16      {
 17          ながら(%で2 == 0 18              / = 2 19          一方(%で3 == 0 20              、A / = 3 21          一方(%で5 == 0 22              、A / = 5 23          リターン== NUM 。1 ;
 24      }
 25  };
 26である 
27  
28  //が格納されたデータメソッド使用
29  クラスSolution02 {
 30  公共31である     INT GetUglyNumber_Solution(INT インデックス){
 32          IF(指数< 1戻り 0 ;
 33である          ベクトル< INT > Vを(インデックスは、0 );
 34である          [V 0 ] = 1 ;
 35          int型 P2、P3、P5、K = 1。;
 36         P2 = P3 = P5 = 0 37          一方(K < 指数)
 38          {
 39              V [K ++] =分(分(Vの[P2の] * 2、V [P3] * 3)、V [P5] * 5 )。
40              一方(V [P2] * 2 <= V [K - 1 ])P2 ++ 41              一方(V [P3] * 3 <= V [K - 1 ])++ P3 42              一方(V [P5] * 5 <= V [K - 1 ])、P5 ++ 43          }
 44          リターンV [索引- 1 ]。
45      }
 46 }。

 

おすすめ

転載: www.cnblogs.com/zzw1024/p/11700759.html
おすすめ