タグ

ブックマーク / ir5.hatenablog.com (3)

  • Rust で競プロ - うどん記

    Rust競プロする話について書こうと思います。ちなみにこの記事は競プロアドベントカレンダーの7日目の記事です。 Rust とは何だったか Rustは速度、安全性、並行性の3つのゴールにフォーカスしたシステムプログラミング言語です。 (公式サイトより引用) Mozilla が開発しているコンパイル型のプログラミング言語です。 ムーブセマンティクスや変数の寿命といった独特な機能によってメモリの安全性やデータ競合の安全性をコンパイラが保証している点や、プログラミングする上で便利な構文が用意されているのが特徴的です。 言語の機能としては例えば imos さんの記事とかが詳しいです。 開発の世界では最近注目が集まってきているような気がしますが競プロではまだまだ使われている場面が少ないので、布教も兼ねてどういう感じか紹介したいと思います。 競プロC++ 使ってるけど、Rust 使う利点/欠点は

    Rust で競プロ - うどん記
    peketamin
    peketamin 2017/12/09
  • 最高落下速度環境で動くテトリスのゲームAIを作った - うどん記

    「最高落下速度(20G)」かつ「クラシック方式の回転法則」という高難易度環境のテトリスで良い感じに動くゲームAIを作りました。以下はそのデモです。 ソースコードをgithubで公開しています:https://github.com/ir5/tetris20g-ai ゲームのルール テトリスは知っている方が多いと思いますが改めて説明すると、10x20くらいのフィールドで次々に空から降ってくるピースを操作して地面に固定させ、横一列にブロックが揃ったら消える、というのを繰り返すゲームです。 ”普通の設定”で動くテトリスのゲームAIは世の中にたくさんあるようですが、今回はよりタフな設定でゲームAIを作りたいと思ったので以下のような高難易度要素を取り入れました。 落下速度:20G 普通のテトリスではピースは1マスずつ落下していきますが、これを加速させて最高のスピードにするとフィールドの上部に現れたピー

    最高落下速度環境で動くテトリスのゲームAIを作った - うどん記
    peketamin
    peketamin 2017/11/05
  • ICALP 2014 に論文採択されました - うどん記

    M.Kusumoto, and Y.Yoshida . "Testing Forest-Isomorphism in the Adjacency List Model." ICALP 2014, to appear. 修論の成果で投稿した論文が国際会議のICALP2014に採択されました. ICALP(International Colloquium on Automata, Languages and Programming) は理論計算機科学(理論系アルゴリズム,計算量理論,言語・オートマトン,プログラミング言語理論など) を扱う国際会議です.運営はEATCSというヨーロッパの理論計算機科学の団体によって行われ,会議は毎年ヨーロッパの色々なところを転々としながら開催されるようです.今年はデンマークのコペンハーゲンで開催されます. ICALPは理論系アルゴリズム界隈の会議の中でも上位レベ

    ICALP 2014 に論文採択されました - うどん記
    peketamin
    peketamin 2014/04/13
    かっけぇ!仕事でグラフの同一性判定が欲しいと思ったことがあったけど、高卒の自分にはどうしていいか手も足も出なかった…
  • 1