はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

はてなブックマーク

  • はてなブックマークって?
  • アプリ・拡張の紹介
  • ユーザー登録
  • ログイン
  • Hatena

はてなブックマーク

トップへ戻る

  • 総合
    • 人気
    • 新着
    • IT
    • 最新ガジェット
    • 自然科学
    • 経済・金融
    • おもしろ
    • マンガ
    • ゲーム
    • はてなブログ(総合)
  • 一般
    • 人気
    • 新着
    • 社会ニュース
    • 地域
    • 国際
    • 天気
    • グルメ
    • 映画・音楽
    • スポーツ
    • はてな匿名ダイアリー
    • はてなブログ(一般)
  • 世の中
    • 人気
    • 新着
    • 新型コロナウイルス
    • 働き方
    • 生き方
    • 地域
    • 医療・ヘルス
    • 教育
    • はてな匿名ダイアリー
    • はてなブログ(世の中)
  • 政治と経済
    • 人気
    • 新着
    • 政治
    • 経済・金融
    • 企業
    • 仕事・就職
    • マーケット
    • 国際
    • はてなブログ(政治と経済)
  • 暮らし
    • 人気
    • 新着
    • カルチャー・ライフスタイル
    • ファッション
    • 運動・エクササイズ
    • 結婚・子育て
    • 住まい
    • グルメ
    • 相続
    • はてなブログ(暮らし)
    • 掃除・整理整頓
    • 雑貨
    • 買ってよかったもの
    • 旅行
    • アウトドア
    • 趣味
  • 学び
    • 人気
    • 新着
    • 人文科学
    • 社会科学
    • 自然科学
    • 語学
    • ビジネス・経営学
    • デザイン
    • 法律
    • 本・書評
    • 将棋・囲碁
    • はてなブログ(学び)
  • テクノロジー
    • 人気
    • 新着
    • IT
    • セキュリティ技術
    • はてなブログ(テクノロジー)
    • AI・機械学習
    • プログラミング
    • エンジニア
  • おもしろ
    • 人気
    • 新着
    • まとめ
    • ネタ
    • おもしろ
    • これはすごい
    • かわいい
    • 雑学
    • 癒やし
    • はてなブログ(おもしろ)
  • エンタメ
    • 人気
    • 新着
    • スポーツ
    • 映画
    • 音楽
    • アイドル
    • 芸能
    • お笑い
    • サッカー
    • 話題の動画
    • はてなブログ(エンタメ)
  • アニメとゲーム
    • 人気
    • 新着
    • マンガ
    • Webマンガ
    • ゲーム
    • 任天堂
    • PlayStation
    • アニメ
    • バーチャルYouTuber
    • オタクカルチャー
    • はてなブログ(アニメとゲーム)
    • はてなブログ(ゲーム)
  • おすすめ

    おうちレシピ

『antimon2.hatenablog.jp』

  • 人気
  • 新着
  • すべて
  • Ruby で メモ化カッコカリ( #rubytokai 発表メモ) - 名古屋で数学するプログラマ(仮)

    10 users

    antimon2.hatenablog.jp

    昨日の Ruby東海 第32回 勉強会 で、メモ化の発表をしてきました。 資料を作る暇(と体力)がなかったのですが、とりあえず発表内容をまとめておきます。 自己紹介 過去に作ったスライド の 3〜4 ページ目利用。 メモ化とは? [資料]:Rails Best Practices - Use memoization (4年前の英語ブログ記事*1) 簡単に言うと、「一度計算した結果を覚えておいて使い回す手法のこと」 ※編集註:まだマサカリ投げないで(>_<) 言葉の定義とかは Wikipedia 参照: wikipedia:メモ化 wikipedia:参照透過性 Ruby でメモ化(仮) [資料]の Probrem 節を説明 「if 式とその後の <%= 〜 %> で同じメソッドを呼んで、同じ計算を 2 回している。もったいないよね?」 [資料]の Caching with instance

    • 学び
    • 2014/10/12 11:40
    • ruby
    • 「yieldのお勉強 Lv.99」解説(Ruby編/Python編共通) #CodeIQ - 名古屋で数学するプログラマ(仮)

      18 users

      antimon2.hatenablog.jp

      先日、CodeIQ の以下の問題が、公開終了となりました。 たくさんの挑戦、ありがとうございます。 yieldのお勉強 Lv.99 (Ruby編)( https://codeiq.jp/ace/antimon2/q1037 ) yieldのお勉強 Lv.99 (Ruby編)( https://codeiq.jp/ace/antimon2/q1038 ) (すでに問題の公開は終了していますので、上記 URL で問題詳細を見ることはできません) ということで、恒例の解説記事です。 今回は個人的事情*1で解説が遅れましてスミマセン。 いつものように問題文は省略します(挑戦者だけの特典♪)が、Lv.1/Lv.2 と同様、問題は、一部が未実装のプログラムを実装してテストを全て通るようにする、というもの。 以下に、問題プログラム・解説、そして解答例を示します。 なお、一部前回の ヒント記事 にて既に部

      • テクノロジー
      • 2014/09/30 18:28
      • Ruby
      • python
      • Programming
      • 「yieldのお勉強 Lv.1」解説(Ruby編) #CodeIQ - 名古屋で数学するプログラマ(仮)

        40 users

        antimon2.hatenablog.jp

        CodeIQ 出題者デビュー問題、公開終了となりました! たくさんの挑戦、ありがとうございます。 yieldのお勉強 Lv.1 (Ruby編)( https://codeiq.jp/ace/antimon2/q1001 ) (すでに問題の公開は終了していますので、上記 URL で問題詳細を見ることはできません) 問題文は省略します(挑戦者だけの特典♪)が、問題は、一部が未実装のプログラムを実装してテストを全て通るようにする、というもの。 以下に、問題プログラムと解答例を示します。 【2014/08/20 23:45 追記:解説補足記事 公開しました】 問題プログラムと解答例 まずは、問題プログラム。 問題プログラム: AnswerQ1 クラスの drop メソッドが空っぽの定義になっています。 これを、テストが通るように実装する、というわけです。 テストで要求しているのは、大体次の通り:

        • テクノロジー
        • 2014/08/18 21:48
        • Ruby
        • CodeIQ
        • development
        • *あとで
        • もっと「クロッシング問題」(=転倒数計算問題) - 名古屋で数学するプログラマ(仮)

          3 users

          antimon2.hatenablog.jp

          一昨日 の続き。 通称「クロッシング問題」(実質「転倒数計算問題」)について、結城 浩 氏からフィードバックが届きました。 (解答投稿した人しか見られないらしいのでURLとか貼れませんのでご了承ください) その中で、こちらの想定していたアルゴリズム以外のものが紹介されていたので、ちょっと試してみました。 改めて、転倒数計算アルゴリズム 結城氏の紹介していたアルゴリズムは、以下の 3+1 つでした。 ナイーブな方法(=バブルソートと同等の素朴な方法、計算量 O(n2) マージソートを使う方法(計算量 O(n log n)) 転倒表(逆転表)を使う方法(計算量 O(n log n)) (おまけ)BIT を利用する方法 最後の「BIT を利用する方法」を(おまけ)と表記したのは、結城氏は想定しておらず「皆さんの解答でこんなのを利用したものがありました」という紹介をされていたからです(サンプルコー

          • テクノロジー
          • 2013/09/05 07:59
          • 日付型のユニットテスト(『CodeIQの問題・パズルを考えよう!』提案その4) - 名古屋で数学するプログラマ(仮)

            6 users

            antimon2.hatenablog.jp

            『CodeIQの問題・パズルを考えよう!(by CodeIQ×はてな)』に #{"また"*3} 応募してみます。 今回は、提案と言うより相談です。TDD ネタです。 日付型のテスト… ユニットテストで… 実行環境のシステム日時に依存して結果が変わるメソッドをテストするには、どうすれば良いのでしょうか? 実行環境のロケール(正確にはローカルタイムゾーン)に依存して結果が変わるメソッドをテストするには、どうすれば良いのでしょうか? 正直、私自身の中に明確な正解がありません(^-^; 本当に相談です。 システム日時の方は、setup フェーズでなんらかの日時固定処理とか日時取得外部メソッド準備とかそういうことをすれば良いのかな?とは思うのですけれど。 タイムゾーンの方は未解決です。Java などの TimeZone 型(クラス)が標準で存在する言語(処理系)はそれをうまく利用してなんとかなるかも

            • テクノロジー
            • 2013/08/24 23:43
            • センサーデータ解析(『CodeIQの問題・パズルを考えよう!』提案その3) - 名古屋で数学するプログラマ(仮)

              8 users

              antimon2.hatenablog.jp

              『CodeIQの問題・パズルを考えよう!(by CodeIQ×はてな)』にまたまた応募してみます。 前 2 回は「ほぼ完全な問題」(そのまま出題できそうな問題)の投稿でしたが、今回は(お題本来の意図に沿った?)「問題のアイデア」応募。 モーションセンサー iPhone や Android 搭載スマホには各種センサーが搭載されていますよね。 傾きを検知するジャイロセンサー(ジャイロスコープ)、移動・落下・重力を検知する加速度センサー、近接センサーなんてのもありますね。 特に「加速度センサー」や「ジャイロスコープ」は、動きを検知する所謂「モーションセンサー」の部類に入り、スマホアプリでよく利用されると思います。 「モーションセンサーを利用して、スマホの画面上で傾きに応じてボールが転がるアプリを作りましょう」 とかってのはアプリ開発ネタとして Web マガジンの記事とかセミナーとか勉強会とかでよ

              • テクノロジー
              • 2013/08/23 12:12
              • 平方三角数(『CodeIQの問題・パズルを考えよう!』提案その2) - 名古屋で数学するプログラマ(仮)

                6 users

                antimon2.hatenablog.jp

                『CodeIQの問題・パズルを考えよう!(by CodeIQ×はてな)』にまた応募してみます。 今回はコードゴルフ問題案。 提案する問題 【コードゴルフ】平方三角数 ■平方三角数とは? 三角数とは、n×(n+1)/2 で表すことの出来る整数(>0)のこと。 1 から n までの整数の総和()のことですね。 下図のように、綺麗な三角形の形に並べることが出来るので「三角数」と呼ばれます。 ● ●    ●● ●   ●●   ●●● ●  ●●  ●●●  ●●●● ● ●● ●●● ●●●● ●●●●● … 1   3    6    10     15 … 平方数(別名:四角数)は、n2 で表すことの出来る整数(>0)のこと。 三角数と同様、綺麗な四角形(正方形)の形に並べることが出来ます。 ●●●●● ●●●● ●●●●● ●●● ●●●● ●●●●● ●● ●●● ●●●● ●●●●●

                • テクノロジー
                • 2013/08/19 14:53
                • 平成変換(『CodeIQの問題・パズルを考えよう!』提案その1) - 名古屋で数学するプログラマ(仮)

                  4 users

                  antimon2.hatenablog.jp

                  『CodeIQの問題・パズルを考えよう!(by CodeIQ×はてな)』に応募してみます。 平成変換 平成変換とは? 平成変換とは、田村三郎著の「数学パズルランド—身近な素材でパズる」(isbn:4061329049、講談社ブルーバックス、絶版)で紹介されている数字パズルです。 著者の田村氏が京都府の上山秀幸氏から平成 3 年の年賀状でもらった問題として、以下のような文章が紹介されています: 下のような規則で自然数Mから別の自然数Nを生成する操作を《平成変換》と呼ぶことにする。 『自然数Mの連続した各位の数が、自然数Nの連続した各位の数の平方に成るか、または、平方根に成る。』 (例)[5]63→(256)3→(16)[3]→(49)→7 (4 step) [問題] (西暦)1991(年)を(平成)3(年)に《平成変換》せよ! (Webで紹介するにあたって傍点や傍線を別の表現に置き換えました

                  • テクノロジー
                  • 2013/08/08 12:13
                  • MeCab Ruby と CaboCha Ruby をインストールしてみた - 名古屋で数学するプログラマ(仮)

                    6 users

                    antimon2.hatenablog.jp

                    機械学習も統計もあまり勉強進んでいませんゴメンナサイ。 ちょっとそのきっかけ作り(という名目の個人的な実験)のために、形態素解析とか日本語係り受け解析とかを試してみることにしました。 個人的な理由のために Ruby からの利用を前提として。 MeCab と MeCab Ruby のインストール 最初は「形態素解析」というものに触れてみようということで、 MeCab をインストール。 技術ブログでは「失敗したログも含めて全部記録する」のが定石なんですが、めんどくさいし個人的には成功例と「なぜそれで成功したのか(なぜ失敗を回避できたか)」が分かれば良いと思うのでその方針で書きます。 ちなみに環境は、Mac OSX Lion 10.7.4 です。 インストールしたのは以下の通り: Mecab (0.994) mecab-ipadic (2.7.0-20070801) まずは MeCab 本体。最

                    • テクノロジー
                    • 2013/05/27 09:45
                    • ナイーブベイズフィルターの実装と考察 - 名古屋で数学するプログラマ(仮)

                      5 users

                      antimon2.hatenablog.jp

                      やっぱ実家はいろいろ捗る。洗濯とか料理とか自分では何もやらなくていいから。 というわけで、前回の勉強の続き、予告通りナイーブベイズフィルターを実装してみました。 実装 と言っても、実装に関しては手抜きです。 gihyo.jpの連載機械学習 はじめようの、第3回「ベイジアンフィルタを実装してみよう」のサンプルコードをほぼそのまま流用しました。 ただし。以下のような手を加えています。 せっかくなので別言語(=Ruby)に翻訳することで、一応自分でコードを写経して覚えるという行動を取る。 せっかくなので先日インストールした MeCab を利用するようにコードを修正する。 どちらもすんなりうまくいったのですが、後者でちょっと躓きました。それは追々触れていきます。 まずは翻訳(写経)*1。 あ、もちろん morphological.rb の動作には MeCab と MeCab Ruby のインストー

                      • テクノロジー
                      • 2013/04/16 20:41
                      • 機械学習
                      • 汎用的で省メモリかつかなり速い素数無限列挙 - 名古屋で数学するプログラマ(仮)

                        4 users

                        antimon2.hatenablog.jp

                        台風凄かったですね。私の住んでいる地域では、夕方頃に風雨ともかなり強かったのですが、今はもうだいぶ落ち着いてきちゃいました。 さてさて。昨日の記事の続きです。 まずはPrime::A2Generatorの説明、その前に、その元になっているメモ: 上限を決めずに素数を生成の高速化(Ruby版)のPrimeGeneratorの解説から。 log.ttsky.net の PrimeGenerator の解読 大元の記事は、メモ: 素数の逐次生成(Ruby版) v3。たどればもっと元があるようですけれど取り敢えず。ここに書かれているMyPrimeクラスの高速化を図った究極形がこっちの記事のPrimeGeneratorクラス*1。 このクラスが素数を列挙するアルゴリズム(succメソッドの中身)は、読み解くと以下の通り*2: 取り敢えず最初に2を返す。 2回目以降は2以上の数を2つずつ順に判定: 最

                        • テクノロジー
                        • 2013/02/07 20:08
                        • 数学
                        • ruby
                        • フィボナッチ数(2) ver.末尾再帰 - 名古屋で数学するプログラマ(仮)

                          8 users

                          antimon2.hatenablog.jp

                          暑中残暑お見舞い申し上げます。 この記事書き始めた頃は暑中だったのに色々あって立秋過ぎちゃった。 さておき、前回予告した、「フィボナッチ数を求めるための末尾再帰」について。 おさらい …フィボナッチ数 詳細は、前回の記事とか、適当にググってみたりとかしてください。 簡単に言うと、 で定義される数列で、例えば def fib n return n.even? ? -fib(-n) : fib(-n) if n < 0 # for negative n a, b = 0, 1 n.times { a = b + b = a } a end こんな関数(メソッド)を書くと一般の n 番目のフィボナッチ数を求められます。 ちなみに最初の方を列挙すると以下の通り。 (0, )1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, … 末尾再帰について少しだけ 一般に関数

                          • テクノロジー
                          • 2013/01/02 19:46
                          • 汎用的でけっこう速い素数無限列挙 - 名古屋で数学するプログラマ(仮)

                            9 users

                            antimon2.hatenablog.jp

                            二週間ぶりです。風邪引いてました。二週間かかってようやく落ち着きました。この時期の夏風邪ってば以下略。 さてさて、今日から暫く「素数列挙」の話をします。 Ruby1.9 の素数列挙メソッド Ruby1.9には、素数列挙・素数判定・素因数分解を一手に扱う素数ライブラリが用意されています。 このブログでも素数列挙する時とかに何の説明もなく使ってました。 require 'prime' Prime.each {|pr|puts pr} # => 2 # => 3 # => 5 # => 7 # => 11 # => …(以降無限に列挙) これ、割と速いです。というか結構速いです。 python+素数列挙でググるとよく出てくる、こんなサンプル from itertools import ifilter, count def prime_generator(): g = count(2) while

                            • テクノロジー
                            • 2012/08/16 09:17
                            • 素数
                            • ruby
                            • 数学

                            このページはまだ
                            ブックマークされていません

                            このページを最初にブックマークしてみませんか?

                            『antimon2.hatenablog.jp』の新着エントリーを見る

                            キーボードショートカット一覧

                            j次のブックマーク

                            k前のブックマーク

                            lあとで読む

                            eコメント一覧を開く

                            oページを開く

                            はてなブックマーク

                            • 総合
                            • 一般
                            • 世の中
                            • 政治と経済
                            • 暮らし
                            • 学び
                            • テクノロジー
                            • エンタメ
                            • アニメとゲーム
                            • おもしろ
                            • アプリ・拡張機能
                            • 開発ブログ
                            • ヘルプ
                            • お問い合わせ
                            • ガイドライン
                            • 利用規約
                            • プライバシーポリシー
                            • 利用者情報の外部送信について
                            • ガイドライン
                            • 利用規約
                            • プライバシーポリシー
                            • 利用者情報の外部送信について

                            公式Twitter

                            • 公式アカウント
                            • ホットエントリー

                            はてなのサービス

                            • はてなブログ
                            • はてなブログPro
                            • 人力検索はてな
                            • はてなブログ タグ
                            • はてなニュース
                            • はてなパークス
                            • ソレドコ
                            • App Storeからダウンロード
                            • Google Playで手に入れよう
                            Copyright © 2005-2026 Hatena. All Rights Reserved.
                            設定を変更しましたx