792 K番目の素数
中国の
英語
素数を考えるとn
最初の素数の出力です。
サンプル
サンプル1
输入: n = 3
输出: 2
解释:
[2,3,5],3是第2个质数。
サンプル2
输入: n = 11
输出: 5
解释:
[2,3,5,7,11],11是第五个质数。
注意事項
n <= 100000
。- より大きな素数を定義した
1
ことに加えて、自然数1
、自社以外の、および他の要因が存在しません。
クラスソリューション: 「」「 @param N-:番号 @return:ランクの数 」「」 「」 " 一般的なアイデア: 1 。まず、与えられた初期値、それが素数である場合は、割り当てられている場合、割り当てる必要はありませんA。割り当てられているこの数は素数、割り切れないが、それは現在決定されていることに留意されたい 2 (素数は、ラベル割り当てすることができるされていない)素数の所望の位置にN割り当ての反復するパラメータに応じていない。 3 。ためにそれが0であれば、サイクルは、その後、何も、割り当てられた説明するためにカウント数が素数ではありませんがあります。 「」 " DEF kthPrime(セルフ、N-): ##すべて0に初期化 総理 = [ 0 ] * 100000 用 I における範囲(2 、 N-): ## 0説明がまだ割り当てられていない場合(実際には、この決意を追加し、割り当て)が重複割当を回避するために、少なくてもよい IFプライム[I] == 0を: それが素数でない場合は##、その後、2、とすることができる3、4、5 ...ので割り切れる、それが1(2、から反対割り当てられている3、4、5 ...乗算値)の ための J で範囲(2 * I、N-、I): プライム[J] = 1 ##次に説明する、後述する第一の数は、素数1ではないと判断する(2開始決意から)素数で0 COUNT = 1 用 J におけるレンジ(2 、N-): IFプライム[J] == 0 : COUNT + = 1 戻り COUNT