Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
※この記事は、数学 Advent Calendar 2016 1日目の記事です。 タイトルの「89」という数は、一見ただの普通の整数に思われるかもしれません。 ですが、この数にまつわるすごく面白い性質を今年に入って知り、個人的にかなり感動したので、今回はそれを伝えたいと思います。 素数 まず、89は素数です。24番目の素数にあたります。 この記事も素数のTシャツを着て書いている程度に素数大好きな私としては、これだけでも大絶賛に値するのですが、今回はこの件ではありません。 89は、フィボナッチ数列の中にも出現します。 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, … フィボナッチ数列というのは、前2つの数を足していくことで作られる数列です。 1 + 1 = 2 1 + 2 = 3 2 + 3 = 5 3 + 5 = 8 5 + 8 = 13 8 + 13 = 2
はじめに 先日職場の勉強会でRSA暗号、楕円曲線暗号について発表をしました。面白いことに話の全体を通してフェルマー(17世紀のフランスのアマチュア数学者)が登場しました。 RSA暗号の鍵となる素数の面白い性質としてフェルマーのクリスマス定理(4で割って1余る素数が2つの平方和であらわせるやつ。等) の紹介。 RSA暗号で平文、暗号文を変換するアルゴリズムの原理の証明にはフェルマーの小定理を使う。 楕円曲線はフェルマーがそれと知らず(?)好んで研究の対象にしていた。 「楕円曲線はモジュラーである」という谷山–志村予想(の特赦なケース)を証明することでフェルマーの最終定理が証明された。 フェルマーはパスカルと共に確率論を創始するなど、上記の暗号関連の話以外にも重要な仕事を行なっております。フェルマーは17世紀の人ですが、現代社会の根っこの部分に彼が与えた、与えている影響は大きそうです。ただ、今
例題の解答1515809277 が9の倍数かどうか? を上の方法で確かめて見ましょう。 各位の和を求める 1 + 5 + 1 + 5 + 8 + 0 + 9 + 2 + 7 + 7 = 45和の45 は 9の倍数なので、元の数字 1515809277 は 9の倍数である。 ※ 数学で $abc$ と書くと $a \times b \times c$ の事を意味しますが、今回だけ $a$百(ひゃく)$b$十(じゅう)$c$ の事を表します。 $$ \begin{eqnarray} abc &=& a\times100 + b\times10 + c \\ &=& a\times( 99 + 1 ) + b\times( 9 + 1) + c \\ &=& a\times9\times11 + a + b\times9 + b + c \\ &=& \textcolor{red}{9\t
Problem 468の計算量を見積もるときにこんな問題が思い浮かびました。 N以下を素因数分解したとき、素因数の個数の平均は? 例えば、2、3、4 = 22、5なら1個、6 = 2 * 3なら2個とします。logNよりはずっと小さいと思われます。とりあえずコードを書いて調べてみましょう。 from itertools import * def div_pow(n, d): e = 0 while n % d == 0: e += 1 n /= d return e, n def make_factors_table(N): a = range(N + 1) for p in takewhile(lambda p: p * p <= N, (n for n in count(2) if a[n] == n)): for m in xrange(p, N + 1, p): if a[m] =
参考にしたのは以下の@rng_58さんによるツイートです 導出が自明ではないのでメモ(少なくとも僕にとっては) ideone.com/SOygoW これで 1 から N までの逆元が O(N) でもとまります— rng_2さん (@rng_58) 2013年3月15日 @komaki__ i * (MOD/i) = MOD - MOD%i を変形すると出てきます— rng_2さん (@rng_58) 2013年3月15日 逆元列挙のコード 以下のコードで1~nまでの逆元(mod m)をO(n)で求められます // 1~nの逆元を求める(mod m) vector<ll> list_mod_inverse(ll n, ll m) { vector<ll> inv(n + 1); inv[1] = 1; for (int i = 2; i <= n; ++i) inv[i] = inv[m %
● ユークリッドの互除法 ● <お勉強>の「黄金数」ででてきたように、 フィボナッチ数というのは、こんな数でした。 1,1,2,3,5,8,13,21,34,55,・・・ これらの数はこんなふうにして出てきました。 1 1 1+1=2 2+1=3 3+2=5 5+3=8 ・・・・・・・ これって、じつはユークリッドの互除法です。 <お勉強>の「ユークリッドの互除法」のところで、 (ずばり 5 と 8 で)一度やったのです。 ユークリッドの互除法って、お互いにわり算していくのでしたから、 8÷5=1 あまり 3 5÷3=1 あまり 2 3÷2=1 あまり 1 となります。 これの「たしかめ算」は 8=1×5+3 つまり 8=5+3 5=1×3+2 つまり 5=3+2 3=1×2+1 つまり 3=2+1 これに 2=1+1 をつけくわえると、こ
This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.
ウィルソンの定理(ウィルソンのていり、英: Wilson's theorem)は初等整数論における素数に関する次のような定理である。 ウィルソンの定理 ― p が素数ならば (p − 1)! ≡ −1 (mod p) が成り立つ。 逆に、整数 p > 1 に対し、(p − 1)! ≡ −1 (mod p) ならば、p は素数である。 p が大きくなるにつれて計算量が膨大になるため、素数かどうかを判定するために用いるには実用的ではない。 歴史[編集] この定理は、10世紀のペルシャの数学者イブン・アル・ハイサム(アルハゼン)によって最初に発見された[1]。しかし、ヨーロッパでは長いこと知られず、イギリスのエドワード・ウェアリングの弟子だったジョン・ウィルソンによって発見され、1770年にウェアリングによって公表され、「ウィルソンの定理」の名がついた[2][3]。しかしウェアリングもウィルソン
In mathematics, the sieve of Atkin is a modern algorithm for finding all prime numbers up to a specified integer. Compared with the ancient sieve of Eratosthenes, which marks off multiples of primes, the sieve of Atkin does some preliminary work and then marks off multiples of squares of primes, thus achieving a better theoretical asymptotic complexity. It was created in 2003 by A. O. L. Atkin and
** **** *** *** *** **** **** **** ********* ************* ********* **** **** **** ********** ***************** ******* *** ******* **** ****** ************** *************************** ****************** ********** ************* ***** ***** ********* ******* ******* ******* **** *************** *************** ************** ***** ***** ** ***** ** ************** ************** ******** ***** *
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く