割当問題とは? 割当問題という問題をご存知でしょうか? $n$ 人に $n$ 個の仕事を割り当てるとき、最も効率の良い割り当て方は何かを考える問題を「割当問題」といいます。 行列で考えるとわかりやすいです。下記の行列の行が人、列が仕事を表し、各成分は各人がそれぞれの仕事を終えるのにかかるコストととらえます。 各仕事に人は1人しか割り当てることができない状態で、全ての仕事に人を割り当てるとき、一番低コストな組み合わせを考えます。 このような問題を考える上で有名なアルゴリズムに「ハンガリアン法」(ハンガリー法)というものがあります。 ハンガリアン法 step1 各行の各要素からその行の最小値を引き、その後さらに各列の各要素からその列の最小値を引く。 step2 $0$ を各行各列から1つずつ選ぶことができるかどうか判定する。もし選ぶことができれば、その $0$ の座標の組みが割当案となる。選ぶ
私はコウメ太夫が比較的好きだ。 彼に遭った最初で最後の機会は、まだ私が小学生の頃。 ショッピングモールで**"徒然なるままに書き散らしたコウメ日記"**に興じる彼に出会った。 その時のネタは今でも覚えている。 「(チャンチャヵ チャン×2 チャチャンヵ チャン×2)×2 最近目が悪いので。 コンタクトにしてみたら。 自分の頭が禿げてる事を知りました。 チクショウ。」 子供ながらに思った。 **「消え去る日は近い」**と。 私の直感的予測は当たり、2年もしないまま彼は芸能界の表舞台から姿を消した。 そこから時は流れること十数年、Twitterで不死鳥の如く復活を遂げる彼を目撃した。 彼は2016年3月、何を思ったかチクショーネタを毎日つぶやく、 **"#まいにちチクショー"**キャンペーンを始動させた。 最初のtweetのいいね数はわずか160台と、始まりは静かだったが、 時間が経つに連れて
May 14, 2019 • Avik Das Dynamic programming has a reputation as a technique you learn in school, then only use to pass interviews at software companies. Indeed, most developers do not regularly work on problems where dynamic programming is needed. Ultimately, dynamic programming is a technique for efficiently solving problems that can be broken down into highly-repeated subproblems, and as a resul
Pythonはコードが書きやすい?ご冗談でしょう ・とにかくコロンを忘れまくる ・Pythonでは、関数が返す値には明示的に「return」を付ける必要がある ・リストに対してmapやfilterといった関数を適用した結果が、リストではなくイテレーターのオブジェクトになっている こんなのを槍玉にあげてるの?ご冗談でしょう。 今こそあの記事を復活させなきゃいけない気がしたので、自分の昔のブログからサルベージ1しました。またせっかくなので、新しく加筆しました。Python の本当の落とし穴、ご査収ください。 自作の test.py を import しようとしてもできない 多くの初心者がハマることですが、自分で test.py というファイルを作って実行しようとしても、うまくいかないことがあります。 これは、Python には標準で test というモジュールが用意されており (!)、自作スク
実行環境 macOS High Sierra 10.13.6 Python 3.5.1 方針 実装方法 偽中国語の慣例上 1 、 動詞「○○する」は「○○実行」と変換することが多い 「明日お酒飲みに行かない?」のような提案する文章の場合、文末に「如何?」を付ける 「私は◯◯したい」のようは希望を表す文は、文末に「希望」を付ける 「お酒を飲む」は「飲酒」のように、熟語を形成する場合が多い というルールがあるようです。 そのため、上記の偽中国語変換を実現するために、 品詞情報まで活用した変換処理 を実施しました。 構文解析を行う 品詞情報を活用するには形態素解析を行う必要があります。この構文解析処理は COTOHA API の構文解析APIを活用しました。 ※参考 (自然言語処理を簡単に扱えると噂のCOTOHA APIをPythonで使ってみた) 日本語の文字列を構文解析し、あるルールに沿っ
Recent changes (last updated April 2026): Added a more theoretical section on Merkle DAGs. This list is now automatically generated. This article is an attempt at explaining the Git version control system from the bottom up, that is, starting at the most fundamental level moving up from there. This does not sound too easy, and has been attempted multiple times with questionable success. But there’
フローチャート ※依存関係・フローチャートはJavaScriptのみです。 対応言語は、下記の通り。 JavaScript TypeScript Python PHP Java C++ 望む言語が他にあればIssueにどうぞ、とのことです。 Code Crumbsのデモ デモでは、JavaScriptのコードでその動作を確認できます。 デモページ 依存関係はDependenciesをオンに、フローチャートはFlowChartタブをクリックします。 Code Crumbsの使い方 セットアップ codecrumbをインストールします(yarn global add codecrumbs)。 codecrumbs -d project-src-dir -e project-src-dir/index.jsを実行し、プロジェクトに合わせてパラメータを変更します。-dはソースコードを含むディレクト
みんなのdocstring書くモチベーションをあげるために、docstringの網羅率を計算して Pull Requestごとにdocstringの網羅率(coverage)の変化を表示したいな〜と思って調べたんですが、 そういった網羅率を計算するライブラリが見つけられなかったので、自分で作りました。 インストールの仕方と使い方を紹介します。 インストール pip install doc-cov これでdoccovコマンドが使えるようになります。 使い方 基本的には計算したいプロジェクトのパスを指定するだけ。 デフォルトではpublicな関数のdocstringの網羅率が出力されます。 $ doccov tests/sample_project function 3 / 5 60.00% Options 細かいオプションはREADMEにありますが、 いくつか例を出しておきます。 csv出力
Nikita Sobolev for wemake.services Posted on Jan 31, 2019 • Edited on Feb 9, 2019 Originally published in my blog: https://sobolevn.me/2019/01/simple-dependent-types-in-python I am quite excited about this new feature in python: simple dependent types. "Dependent types" might sound complex, but it is not. Instead, it is a useful feature and I am going to show how it works and when you should rely
皆さん、Advent Calendar書いてますか! 今回は計算機系Advent Calendar向け記事を書く上で、「端末上の操作」を動画として保存・公開できるasciinemaコマンドについて紹介します。 端末を「録画」する Advent Calendar(アドベントカレンダー)の本来の由来はともかくとして、日本の技術系界隈では12月1日あたりから計算機系記事が充実するイベントとして定着しつつあります。 さて、計算機系の記事を書く上で頻出するのが、コマンドライン上での操作です。大抵の場合はpreタグのように整形済みテキスト(PREformatted text)として、文書の中に埋め込むことでしょう。しかしながらそれでは静的なテキストであって、「実行した結果がどのようなタイミングで表示されるか」はわかりません。もちろんアニメーションGIFやAPNGにしたり、YouTubeにアップロー
基本的なデータ構造であるヒープについて、概要、計算量と実装、そして最もシンプルな応用であるヒープソートを紹介します。MITが講義や資料を公開しているMIT OpenCourseWareのアルゴリズムとデータ構造の講義 が非常にわかりやすかったので、その内容に沿ってまとめました。この記事ではHeaps and Heap Sortの内容を以下の順序で解説します。 ヒープの概要ヒープの表現ヒープの構築ヒープの計算量ヒープの実装ヒープソート1. ヒープの概要ヒープ (heap) は優先度付きキュー (priority queue) の実装の1つです。優先度付きキューは集合 (set) を扱うデータ型で、集合に含まれる要素が何らかの優先度 (priority) 順に取り出されるという特徴を持っています。学会のポスター発表を回るときや、旅行先での観光地巡りでは、優先度に基づいて要素を取り出すことが重要
セキュリティ本部セキュリティ情報統括室。IIJグループの緊急対応チームIIJ-SECTメンバーとして、FIRST、日本セキュリティオペレーション事業者協議会(ISOG-J)、日本シーサート協議会(NCA)などの活動や運営に参加。ヘヴィメタルと猫をこよなく愛し、時間を見つけてローカルなグルメを堪能しながらマイナースポットを訪ね歩く。最近は競技麻雀やMリーグ観戦にハマっている。 【IIJ 2018 TECHアドベントカレンダー 12/10(月)の記事です】 こんにちは。ももいです。 先日、共著で書いたblog記事「素人がトピックモデルを試してみた(第1回)」で紹介したようなこともやっていたのですが、今回はその周辺調査をしている時に見つけた便利なライブラリを紹介します。 “男木島の神社にいた猫(写真と本文は関係ありません)” Newspaper3kは、Webにある記事をスクレイピングするためのラ
Command Line mitmproxy is your swiss-army knife for debugging, testing, privacy measurements, and penetration testing. It can be used to intercept, inspect, modify and replay web traffic such as HTTP/1, HTTP/2, HTTP/3, WebSockets, or any other SSL/TLS-protected protocols. You can prettify and decode a variety of message types ranging from HTML to Protobuf, intercept specific messages on-the-fly, m
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く