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

  • アルゴリズムと数学的思考力 - 怠惰を求めて勤勉に行き着く

    厳しい。年始早々厳しさを感じている。自分のプログラミング力にだ。伸び悩んでいる。 端的に言って、数学力のなさが自分のプログラミング能力に制限をかけている。例えばこの問題。 560. Subarray Sum Equals K 入力として与えられる配列 nums のうち、合計が k となる部分配列の個数を数え上げよ。どうも有名な問題らしいが… まず大前提として、部分配列なので i, j の2重ループで始点・終点を定めて sum(nums[i, j]) = k になるものを数え上げれば必ず答えが得られる。最悪計算量は O(N^3) ただし i < nums.length < 20000 という制約があるので N^3 では遅すぎるから何か考えてくださいというのがスタート地点。 ここで、結果の変わらない累積和を何度も求めているので nums[i, j] = k を求めたい場合、 nums[0, j

    アルゴリズムと数学的思考力 - 怠惰を求めて勤勉に行き着く
  • 唐突にYAMAHAルータ愛を吐露する - 怠惰を求めて勤勉に行き着く

    こんにちは、お父さんです。日に帰ってきて4月1日からとある多国籍企業で働いております。当はその辺の話を書きたかったんですが、存外に社外発信について厳しいので面倒くさくなってしまい、職場のことは書かないと決めました。それで、唐突に僕のYAMAHAルータ愛を吐露したいと思います。 僕はYAMAHAのルータが大好きです。僕の技術者としてのキャリアのスタートはネットワークエンジニアでした。当時はまだオンプレの時代だったので、会社の1室にサーバルームがあったり、データセンタの一画にラックサーバを持ってるのが当たり前でした。社員10人以下の典型的SOHO1だったので、YAMAHAのRTX1100を使って小さなネットワークを制御していました。 YAMAHAのRTXシリーズはまさにこのSOHO向けVPNルータとして最強の存在でした。「VPNルータ」と冠していますが、いまやVPN機能を持ったルータは珍し

    唐突にYAMAHAルータ愛を吐露する - 怠惰を求めて勤勉に行き着く
  • 僕は僕にどういう教育を授けたか - 怠惰を求めて勤勉に行き着く

    まえがき 会社の若い子に「情報系出身でもないのに一体どうやって勉強してきたんですか?」と聞かれたのでランチべながら「こんな読んだ。これもタメになった。あ、これもタメになった」とKindleを広げながらリストアップした。思い返せばたくさんを読んだ。その中には役に立ったものもあれば時間の無駄だったものもある。すると「あ、役に立っただけ抽出したら有益かもしれないな」と思ったのでエントリにする。 僕は文章を簡潔に分かりやすくまとめる才能が致命的にないのでこのエントリもげっそりするほど長い*1が、2017年も暮れなのでここはひとつ日酒でもかっ喰らいながら自分の人生を振り返ってみようと思う。 無理やり要点をまとめるならば、 TCP/IPの知識 Linuxの知識 なにかひとつプログラミング言語 なにかひとつGUIシステムの理解 アルゴリズムとデータ構造 強運*2 を身につけたらどんなに低く見

    僕は僕にどういう教育を授けたか - 怠惰を求めて勤勉に行き着く
  • 1