タグ

アルゴリズムに関するno_riのブックマーク (6)

  • 続: パーフェクトシャッフルは何回で元に戻るか - 西尾泰和のはてなダイアリー

    半年前に作ったパーフェクトシャッフルは何回で元に戻るかの を円形にしたい。 できた。 30枚のカードに「半分に分けて互い違いに組み合わせる」というシャッフルを5回すると元の並びに戻る、という図。 abcdefって6枚のカードがあったら、まず半分に分けて abc, def それから交互に組み合わせて daebfc にする、というシャッフルね。 シャッフルのたびに、1枚目は2枚目になり、2枚目は4枚目になり、4枚目は8枚目になり、8枚目は16枚目になり、16枚目は半分に分けたときに後半の1枚目なので次のシャッフルで1枚目に戻ってくる。5回。 3枚目は6枚目になり、6枚目は12枚目になり、12枚目は24枚目になり、24枚目は後半の9枚目だから17枚目になり、17枚目は後半の2枚目だから3枚目に戻ってくる。やはり5回。 他のカードに関しても同様に成り立つんだけども説明は省略。 Q&A @atusi

    続: パーフェクトシャッフルは何回で元に戻るか - 西尾泰和のはてなダイアリー
  • 【話題騒然】n=2^aで、入力nに対応するaを求めるコード その2 | TarZの日記 | スラド

    (続き) Tellur52さんの日記 おー、なるほど! M系列にこんな応用があったなんて! ということで、64ビット整数が扱えないとハッシュ計算できないけど、6ビットでの例。 000001111110101011001101110110100100111000101111001010001100001 (以降は最初から繰り返し) このビット列について、6文字を切りだす作業を1文字目から順に行っていくと、以下の通りになる。 2つ目のパターンでsortしてみると、000001から111111まで、全てのパターンが出現していることが確認できる。さらにこれに000000を加えれば全て揃うことになる。なんと素晴らしい! 1    000001 2    000011 3    000111 4    001111 5    011111 6    111111 7    111110 8    11

  • ジャンル別ゲームの作り方とアルゴリズムまとめ - ネットサービス研究室

    ゲームの作り方とアルゴリズムをジャンル別にまとめてみました。ゲーム制作や、プログラミングの勉強用にご活用ください。言語別ゲームプログラミング制作講座一覧もあわせてお読みください。 リンク切れがおきていたものは、URLを表示しておくので、Internet Archiveなどでキャッシュを表示させてみてください。 RPG ゲームの乱数解析 乱数を利用した敵出現アルゴリズムの解説 各種ゲームプログラム解析 FF、ドラクエ、ロマサガのプログラムの解析。乱数の計算など ダメージ計算あれこれ(http://ysfactory.nobody.jp/ys/prg/calculation_public.html) ダメージの計算式 エンカウントについて考えてみる エンカウント(マップでの敵との遭遇)の処理方法いろいろ RPGの作り方 - ゲームヘル2000 RPGのアルゴリズム ドルアーガの塔 乱数の工夫の

    ジャンル別ゲームの作り方とアルゴリズムまとめ - ネットサービス研究室
  • ロシア農民のかけ算とCPU - NullPointer's

    ロシアの農民のかけ算という、かけ算の方法があるらしい。 たとえば9×12ならば、前の数を半分にしていき、後の数を2倍していく。 9 12 4 24 2 48 1 96前の数が2の倍数になってるものを削除して 9 12 1 96残った後ろの数を足すと 12 + 96 = 108あら不思議、9×12の答えになったよコレ。 このロシアの農民のかけ算が何をしているのか調べてみると 9 * 12 = (4 * 2 + 1) * 12 = (4 * 2 * 12) + 12 = (4 * 24) + 12 = (2 * 48) + 12 = (1 * 96) + 12 = 96 + 12な感じに分配法則やら結合法則やら中学校一年で習うような数学テクを使った計算をルーチン化しているものだった。 2倍や半分はシフト演算でできるし、偶数奇数は最下位ビットを見れば分かるので簡単にプログラミングできそう。Jav

    ロシア農民のかけ算とCPU - NullPointer's
  • これがゆとりか… | okkyの日記 | スラド

    いや、私は 1966年の早生まれなので、ここ60年ぐらいで一番きつい教育を受けた世代。ほぼ全ての世代に対して「ゆとり」と言える立場ではあるのですが。 # 教育を「うけた」からといってそれが「身についている」 # と考えてはいけない、好例ですな。 . それはともかく。 どうやら Merge Sort を知らない人がいるらしい。 http://srad.jp/~messier42/journal/442400 それは merge sort というやり方そのものだよ。つーか merge sort 知ってるなら最初に思いつくのがそれだ。 そして普通は 1) uniq <original file> | split -l 10000 - /tmp/aa 2) for i in /tmp/aa*; sort $i | uniq > $i.2; done 3) sort -m /tmp/aa*.2 |

  • 404 Blog Not Found:プログラマーでなくても名前ぐらい覚えておきたいアルゴリズムx10

    2007年11月26日18:15 カテゴリMathLightweight Languages プログラマーでなくても名前ぐらい覚えておきたいアルゴリズムx10 ぎくっ あなたが一番好きなアルゴリズムを教えてください。 また、その理由やどんな点が好きなのかも教えてください。 - 人力検索はてな なぜぎくってしているかというと、実はすでにアルゴリズムの発注を受けているからなのだ。いつまでも伏せておくのもなんなので、ここにえいやっとdiscloseしてしまうことにする。 アルゴリズム大募集! C&R研究所 - トップページ その下書きもかねて、そこでも紹介しないわけに行かないメジャーなアルゴリズムをとりあえず10個紹介しておくことにする。 ユークリッドの互除法(Euclidean algorithm) その昔(数百年ほど前)は「アルゴリズム」といえば、「手順一般」を指すのではなく、この「互除法

    404 Blog Not Found:プログラマーでなくても名前ぐらい覚えておきたいアルゴリズムx10
  • 1