C#

【C#】ナップサック問題の最適値を満たす商品の番号を求める(動的計画法)

C#

最近、蟻本と呼ばれる本を使って競技プログラミングの勉強をしています。 動的計画法でナップサック問題を解く部分で、最適値ではなく最適解(選ぶ品物の番号)を求めるコードが書かれていなかったので、少し調べてみました。 各品物が使われるかどうかを、作…

【C#】Unityで一からギャルゲー(ノベルゲー)作るためのサンプルコード

一応は前回の記事の続きにあたりますが、コードの内容はほとんど別物です。 前回の記事ではゲームの方針として脱出ゲームのようなものを考えていましたが、今回はやや方向性を変えギャルゲーっぽいものを作ることを想定します。 今回の記事でやりたいことは…

【C#/Unity】出現率から項目を一つルーレット選択で選ぶ拡張メソッド

RPGなどで、出現率(選択確率)などからある項目を一つ選びたい場面がしばしばあると考えられます。 例えば、敵の各行動が行われる確率を以下のようにDictionary形式で表すとするとき var enemyActionProbs = new Dictionary<string, int>() { { "attack", 60 }, { "guard",</string,>…

【WPF】ContextMenuに表示される一部項目を、場合に応じて選択できなくする

意外と書いてあるサイトが少なかったのでメモしておきます。 WPFで、通常右クリック時に開かれるメニューに用いられるContextMenuコントロールの内容を、 開かれる前に編集したいことがあると思いますが、 そのときはContextMenuOpeningイベントを利用すると…

Unity 2Dでサイコロを作る

こういうの作ります。 3Dのサイコロを作る方法はいくつか他サイトで公開されていて、2Dのサイコロも同じようにしてすぐ作れるだろうと思っていたら、思いの外苦労したのでその過程を記録しておくことにしました。 制作過程 まずはサイコロの各面の画像を適当…