kb84tkhrのブログ

何を書こうか考え中です あ、あと組織とは関係ないってやつです 個人的なやつ

2019-08-01から1ヶ月間の記事一覧

DPL_1_D: Longest Increasing Subsequence (続き)

わからなかったので解説を見る ふたつ考え方が載っていて、ひとつめは2乗のオーダで時間がかかるので使えない んだけどまずこっちを理解しよう L[i]をA[i]からA[i]までの要素を使いA[i]を最後に選んだ時のLISの長さとする配列 なるほど「A[i]を最後に選んだ…

意志の総量

意志の総量は決まってる、って読んだのは何だったかここんとこすごく実感している 2時間も残業して帰ると何もする気にならなかったりする何年か前まではそれが普通だったんだけど時間だけでなくて中身の違いっていうのも影響してるかな今は仕事中にMP消費し…

Grokking Simplicity 1-3章

まだ1-3章までしか出てないので 関数型プログラミングの話ってPure Functionが、公開関数が、再帰がmapが、副作用は避けよう、みたいなのが多いイメージだけどこの本は違うまず考え方から入る(というか考え方ばっかり 関数型プログラミングはActionとCalcul…

AtCoderをiPhone上で解いてみた

ちょっと最近、家でPCの前に座って勉強する時間が取れなくなってきているので通勤中にAtCoderできないかと思って試してみた やりかたとしては AtCoderの「コードテスト」で入力・実行してからコピペして提出Pythonistaで入力・実行して以下同文PythonAnywher…

『JavaScript: The Good Parts』読んだ

超いまさらながら JavaScript: The Good Parts ―「良いパーツ」によるベストプラクティス 作者: Douglas Crockford,水野貴明 出版社/メーカー: オライリージャパン 発売日: 2008/12/22 メディア: 大型本 購入: 94人 クリック: 1,643回 この商品を含むブログ …

DPL_1_D: Longest Increasing Subsequence

最長増加部分列を求める ヒントの絵の意味が分からないなあ アイコンは1次元の動的計画法と二分探索 そうしてみるとヒントの絵も二分探索か 最長共通部分列ってのやったけどあれと似てるかなあ ちょっと違うかなあ あれは2次元の表作ったけど今回は1次元で…

烹宰飢厭糟糠 もう一度

今日はなんかもうびっくりするほど穂先が割れて字を書くどころの話ではなかったという 墨を含ませている間にもう割れかけていて墨を取っていると生き物のように割れていく

AtCoder Beginner’s Contest 138 復習2

知り合いのコードがキューを使っててどっかで見た感じのコードだなと 思ったらグラフ関連のところで出てきたような書き方なんだな 無向グラフとして扱うわけだからそれも自然か ちょっと思い出しがてら書いてみる 深さ優先から スタックを使うからこれは普通…

MEAPでGrokking Simplicityという本を買ってみた

最近このPodcastを聞いています Thoughts on Functional Programming Podcast by Eric Normand 最初のエピソードから順番に聞いているんですが オープニングの音楽もなくいきなり Eric Normandです “A theory of Functional Programming”っていう本を書こう…

ABC138 D-Ki 復習

そうか、毎回木をたどってたからTLEになったのか 全部読んでからまとめて木をたどればいいんだな 書き直してみた 解説とテストに修正が入ってて、無向グラフとして扱わないとWAになってしまうので その対応も入れて

DPL_1_B: 0-1 Knapsack Problem (続き)

さて逆転させてみる 重さ0とか品物0の場合は価値0 n個めまでの荷物を使って重さの総和tまで持った時の価値は n個めの荷物を使わないとき: (n-1)個めまでの荷物を使って重さの総和tまで持った時の価値 n個めの荷物を使うとき: (n-1)個めまでの荷物を使って…

DPL_1_B: 0-1 Knapsack Problem

ナップザック問題ってやつ よく聞くけどよく知らなかったり 0-1っていうのは入れるか入れないかってことかな ヒントの絵、やっぱり二次元の表だけど矢印が違う そんなに本質的な差な気はしないけどどうかな とにかくまずは再帰で書いてみよう コインの問題と…

AtCoder Beginner’s Contest 138

昨日受けました ところでAtCoderのコンテストって、終わったら中身書いてもいいんだよね? 解説も出るくらいだしいいよな 準備 終わったら早めに寝られるようにお風呂はすませておいた 晩ごはんの飲み物はオールフリーに ヨメとムスメにはパパコンテスト受け…

雁塔聖教序 雲露方得泫花

どうしてもバランスが取れないので、6文字の枠が書いてある下敷きで練習してから書いた そのほうがいいみたい

DPL_1_A: Coin Changing Problem 続き

テキストのコードを見る なんこれ超短い

AtCoder ちょっとやってみる

周囲でプチブームが起こってるので乗っかってみる とりあえずこれをやるらしい AtCoder Beginners Selection - AtCoder えーと、「参加登録」して「問題」をやっていけばいいんだな?どれどれ

DPL_1_A: Coin Changing Problem

ここから動的計画法の章 これまでにいくつか動的計画法の問題があったのでざっと復習しておこう 第11章か だいぶ苦労してたな c1、c2、・・・、cm円のコインでn円を支払うときの最小の枚数を求める 星は思考がふたつで実装がひとつ それほどでもないはず

CGL_6_A: Segment Intersections: Manhattan Geometry 続き3

本と見比べる 大きな考え方は同じ けどだいぶ短く見える 本のコードを見ながらpythonで書いてみる

CGL_6_A: Segment Intersections: Manhattan Geometry 続き2

ひととおり書ききらないと動かす気がしないけど 動かせるほど書くと動く気がしないというね でも必死こいてなんとか書ききったPoint、Segment、Node、Treeの定義は以前のものを使いまわし解説する気力がないので載せるだけ

CGL_6_A: Segment Intersections: Manhattan Geometry 続き

とりあえずALDS1_8_CからBinary Search Treeのコードをコピペ Nodeのkeyはなんでも入るようになってるからだいたい全部使える? 標準出力を読みながら保存していく y座標でソートしたいけどそのままソートするわけではなくて y軸に平行な線分はふたつのy座標…

CGL_6_A: Segment Intersections: Manhattan Geometry

x軸またはy軸に平行な線分の交点を求める 思考が星3.5、実装が星4 これは手強そう 二分探索木と線分の交点のアルゴリズムを使う 下から探していくような絵が書いてある

『FACTFULNESS』読んだ

世界の正しい見方を教えてくれる本 FACTFULNESS(ファクトフルネス) 10の思い込みを乗り越え、データを基に世界を正しく見る習慣 作者: ハンス・ロスリング,オーラ・ロスリング,アンナ・ロスリング・ロンランド,上杉周作,関美和 出版社/メーカー: 日経BP 発売…

残暑お見舞い申し上げます

CGL_4_A: Convex Hull 続き2

忘れすぎてるので、なにやってたかだけでもおさらいする pはPoint、vはVector、sはSegment、lはLine、cはCircle、PはPolygon PointとVector、SegmentとLineは同じ型なので雰囲気で使い分け

CGL_4_A: Convex Hull 続き

1日だけ考える スタックとソートを使いそうなアイデアはあった xを-10000から10000まで変化させつつ、y座標が最大・最小の点を 見つけていけば外周の候補にはなる こんなことをしなくても、点をx座標でソートしてから順番に見ていけばいいもんね 順番に見な…

CGL_4_A: Convex Hull

与えられた点を含む凸包(Convex Hull)を求める 最初に思いつくのは、どこかの点から始めてぐるっと外周を探していくというやり方 最初の点はたとえばy座標が最も小さい点にしておけばよさそう でも単純にやると、次の点を求めるのにn-1個の点を調べる必要が…

烹宰飢厭糟糠

8月のお題は烹宰飢厭糟糠 楷書 気がついてみると最近は2、3枚めくらいでそこそこ書けるようになっててそこは進歩してるのかもしれない前は月の後半くらいにならないと書けてなかった気がするただ、「そこそこ」のレベルは大して上がってないのが大問題 一…

PPP3: 機械学習 Matplotlib scikit-learn

Jupyter上にMatplotlibでグラフを描画するにはまずおまじない %matplotlib inline %matplotlib notebookとすると対話的にグラフを表示するらしいけど どう操作するのかわからなかった まあいいや

PPP3: 機械学習 Numpyとか

NumPyはPythonの数値計算ライブラリで、行列計算を始めとするさまざまなツールを提供しています。 いろんなライブラリの名前を聞くことは聞くんだけど区別がついてない

『私はどのようにしてLinuxカーネルを学んだか』読んだ

Linuxカーネルなんて聞くと一瞬で身構えてしまいますが読みやすい本でしたコードをごりごり読み解いていくような感じではなくて読むための注意点・基礎知識とか読む方法を説明してくれる感じさらさらっと読めます