[過去ログ] プログラミングのお題スレ Part9 [無断転載禁止]©2ch.net (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
334
(8): デフォルトの名無しさん [sage] 2017/07/08(土)03:20 ID:hDxZO8qP(1/3)
お題: 自然数Nの平方根を整数部含めて(1000*N)桁求めたとき、出現する0の個数を数える
たとえば、N = 4の時ルート4を4000桁(整数部1桁+小数部3999桁)求めたとき、出現する0の個数は3999個

N = 3 => ?
N = 5 => ?
N = 7 => ?
336
(1): デフォルトの名無しさん [sage] 2017/07/08(土)03:59 ID:kzKE4jeR(1/2)
>>334 Ruby
require 'bigdecimal'
[3, 4, 5, 7].each{|i|
n = 1000*i - 1
puts "N = %i => %i"%[i, ("%.#{n}f"%BigDecimal(i).sqrt(n)).count(?0)]
}

N = 3 => 2956
N = 4 => 3999
N = 5 => 4956
N = 7 => 6954
339
(2): デフォルトの名無しさん [sage] 2017/07/08(土)09:51 ID:3gkxwDpM(1/2)
>>334 C++

#include <iostream>
#include <string>
#include "gmpxx.h"
int main () {
  int sq_me;
  while( std::cin >> sq_me ){
    int prec = 1000*sq_me, cnt = 0;
    mpf_class sq_out = sqrt( mpf_class(sq_me, prec*4) );
    mp_exp_t exp;
    auto str = sq_out.get_str( exp,10,prec );
    for( auto it=str.begin(); it!=str.end(); it++ ) if( *it=='0' ) ++cnt;
    std::cout << "N = " << sq_me << " => " << cnt+prec-str.length() << '\n';
  }
}

N = 3 => 309
N = 5 => 493
N = 7 => 738
N = 11 => 1079
N = 13 => 1305
N = 17 => 1664
N = 19 => 1875
N = 23 => 2265
N = 29 => 2911
N = 31 => 3113
N = 37 => 3795
N = 41 => 4095
N = 43 => 4312
N = 47 => 4798
N = 53 => 5340
340
(1): デフォルトの名無しさん [sage] 2017/07/08(土)11:54 ID:H5pSyGdF(1) AAS
AA省
342
(1): デフォルトの名無しさん [sage] 2017/07/08(土)12:48 ID:1hnJaOYb(1/2)
>>334 Perl5
http://ideone.com/fAyh2l
343: デフォルトの名無しさん [sage] 2017/07/08(土)13:10 ID:1hnJaOYb(2/2)
>>334 Perl5
http://ideone.com/cMBD8o

>>342 をもう少しすっきり書けたので差し替え。
346
(1): デフォルトの名無しさん [sage] 2017/07/09(日)10:55 ID:xLkjNLhf(1)
>>344
考え直したら面倒じゃなかった

>>334 C++
http://codepad.org/k0Sq8Fqo

N=10000くらいまでなら現実的な時間で計算出来そうだ
363
(1): ◆QZaw55cn4c [sage] 2017/07/14(金)07:55 ID:TDGI45F0(1/3)
>>362
私も欲しかったので作ってしまった、今 >>334 を奮闘中
386
(2): デフォルトの名無しさん [sage] 2017/07/18(火)08:49 ID:YLlwVFMJ(1/2)
>>334 SageMath
https://sagecell.sagemath.org/?q=brdclf

普通に(?)多桁のisqrt()なので何の捻りも無し。
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.040s