プログラミングのお題スレ Part16at TECHプログラミングのお題スレ Part16 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト650:デフォルトの名無しさん 20/01/16 21:02:25 ZS18thyn.net 【お題】以下の31個の数の下6桁を求めよ。 20200101の1, 2, 3, ..., 20200101乗の総和 20200102の1, 2, 3, ..., 20200102乗の総和 20200103の1, 2, 3, ..., 20200103乗の総和 : 20200131の1, 2, 3, ..., 20200131乗の総和 651:デフォルトの名無しさん 20/01/17 06:54:23.06 bFwt3c1k.net >>626 逆行列の計算は避けた方がいいってえらいひとがゆってた ttps://www.kyoritsu-pub.co.jp/bookdetail/9784320013438 652:デフォルトの名無しさん 20/01/17 12:14:19.25 onsz9c/m.net >>629 16, 7: 0 0 1 0 0 1 0 0 1 17, 9: 0 0 0 0 0 1 1 0 1 18, 26: 1 1 0 1 1 1 0 0 0 19, 27: 1 1 0 0 1 1 0 1 0 20, 31: 1 1 0 1 1 0 0 1 0 653:デフォルトの名無しさん 20/01/17 18:26:22.50 KcAYJrW8.net >>632 C++ https://ideone.com/A0BeSs 654:デフォルトの名無しさん 20/01/17 20:33:32 VgNyCBhj.net >>635 正解。 Rによる2種類の解答例 (1) https://ideone.com/7B7IhY (2) https://ideone.com/Y8jx8o (1)は等比数列の総和の公式を利用しているので分かりやすいが、途中計算の最大値が (20200130 * 1000000 - 1) ^ 2 ≒ 2 ^ 88.4 になるかも知れず、64ビット整数の 範囲に収まらないため、Cでは手軽に書けない。Rでは多倍長整数パッケージgmpを 使って書ける。 (2)は部分和をちまちま足していく方式で、途中計算の最大値が (1000000 - 1) ^ 2 ≒ 2 ^ 39.9 で済むため、Cでも64ビット整数で計算できる。Rでも多倍長計算が必要な (1)より速い (正味の実行時間が(1)は0.016秒、(2)は0.004秒)。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch