><https://twitter.com/orange_in_spacehttps://pawoo.net/@orange_in_space
五度圏 - Wikipediahttps://ja.m.wikipedia.org/wiki/%E4%BA%94%E5%BA%A6%E5%9C%8F#:~:text=%E4%BA%94%E5%BA%A6%E5%9C%8F%EF%BC%88%E3%81%94%E3%81%A9%E3%81%91%E3%82%93,%E3%81%AB%E3%81%97%E3%81%9F%E3%82%82%E3%81%AE%E3%81%A7%E3%81%82%E3%82%8B%E3%80%82&text=%E4%BA%94%E5%BA%A6%E5%9C%8F%E3%81%AF%20F,%E5%BE%8B%E3%82%92%E5%89%8D%E6%8F%90%E3%81%A8%E3%81%97%E3%81%A6%E3%81%84%E3%82%8B%E3%80%82
公約数になれなかったやつの影響は「『余り』でシフトされて続きを刻む」という形になるので
こうすると、「最大公約数は『同じ数列の繰り返し回数』になって、残りの (互いに素な) 約数の影響は『繰り返しの周期』になる」というのが読み取りやすくなる
10進数で7の倍数は、7,4,1,8,5,2,9,6,3,0,7 の順に線を結ぶ
あとは円周をb等分して線で結んでいくとか。
100だと約数のバリエーションが増えるので (2, 4, 5, 10, 20, 25, 50)、最大公約数と互いに素な因数の関係が見えやすい
一度100進数とかで考えてみると良いと思います
そりゃまあ2の累乗進数をサンプルにしてしまったら、奇数との最大公約数は1なんだから規則性が見えてしまうのは当たり前では
任意の偶数進数の掛け算の1の位のサイクル長、なんか法則性あるっぽく見えるし、対象の段の数値を使わずに、なんらかの波を作る関数みたいなので出せるような気がほんのりと・・・><同じ発想ですべての段の合計もわりと簡単な式で出せるんじゃないかと・・・><
なんかもっと単純な式で出せそうな気がする・・・><
ヘキサそろばん(16進数)による掛け算 (複数ケタ * 一ケタ) - Qiita https://qiita.com/lamuda/items/3728f799aa309c493cbf
周期 16,8,16,4,16,8,16,2,16,8,16,4,16,8,16
一応補足すると、sずつでスキップしたときsで割るというのは、「sずつでスキップする」が「s個のうち1つだけが訪問される」ことを意味していることに由来する計算
つまり、b進法でmの倍数 (ただし 1≦m<b) を小さいものから並べたとき最小の位の値の周期は、 b/gcd(b,m) の長さになる
60進数での24の段なら、公約数の2や3や4や6や12ずつでスキップした分はいつでも飛ばされるから、そのうち最大の12で60を割って5周期 (24, 48, 12, 36, 0)
8進数での6の段なら、公約数の2ずつスキップしたぶん (1357) はいつでも飛ばされるから8を2で割って4周期
公約数のぶんのステップ数は周回で1周するとぴったり戻ってくるので飛ばされた部分は絶対に訪問されない。たとえば10進数で5の段を考えると最初にスキップされる12346789は絶対に訪問されないから、5で割った結果になる
ていうか周期の合計を出す式があるのかもって思った><
難しい><;
6進数で4なら gcd(6, 4) = 2 なので周期は 6÷2 = 3
これ基数を最大公約数で割った周期になるだけでは?
思考の /dev/null