問題の数学的な解決策をPYTHON

正の整数n。
それは数字3,7により構成され、この数が、この数は、
n個の最小のためにあなたの図面および倍数は、3,7である
処理しなければなりません。

 

コーディング= UTF-8。
インポートNPのAS numpyの
x_num = 1。
 しばらく真:
    x_str = STR(x_num)文字に数字 
    x_str_list =リスト(x_str)    タプルのリストを変換する 
    x_str_len = LEN(x_str_list) リスト要素数 
    x_com x_num =      番号を引き起こすためにプッシュし続けるので、条件が満たされていないかどうかを、後続のため 
    x_str_list_num地図=(INT、x_str_list)    デジタル配列に文字列を 
    SUM_X = np.sum(x_str_list_num)            アレイの合計
    のためのWord  x_str_list:                  #1 を抽出するための文字列
        IF((int型(ワード)== 3または INT(ワード)== 7)及び(21 x_num%の== 0)(0 == 21はSUM_X%である)' 3 '   x_str_list)' 7 '  )x_str_list):
            番号が含まれている必要があります3、7、および本は21の倍数である、と3と7の倍数で個々のビットの合計が
            継続        #は、このサイクルを続け
        、他
            x_num = x_num + 21   条件はデジタルシフトの後、そして、満たされていない場合は
            BREAKの           #の勃発ループ
    IF x_com == x_num:        あなたが要件を満たしている場合、つまり、最後の通常のサイクルで、whileループの外に
        BREAK 
    他に印刷(x_num)
         続行            #を条件が満たされない場合、whileループが続く

印刷(x_numを)
結果:3333377733 
計算効率が改善されなければなりません

おすすめ

転載: www.cnblogs.com/yueluhun/p/11564478.html