2015-12-01から1ヶ月間の記事一覧
これの続きです。 chuckwebtips.hatenablog.com JavaScriptで競技プログラミングを解く際の、ある程度のテンプレを作成しました。 ※ 筆者はまだ競技プログラミングを2回しか受験していません。今後テンプレには手が加えられる可能性があります。 こちらです…
競技プログラミングの過去問を2つこなした。 これまで見えてきたことを軽くリストアップしてみる。 ちなみに使用言語はJavaSciptです。 共通点 問題形式はIOである。 入力されたデータは文字列型として得られる。 最初の入力が「設定情報」である。 何度か…
2015年もいよいよ佳境。そしてこのタイミングで出会った”text-overflow”というCSS。 ちょっと深掘りしてみたいと思います。 Try it いじくり回して理解したい人は、こちらがオススメ。 http://www.w3schools.com/cssref/tryit.asp?filename=trycss3_js_text-…
今日デザイナーさんから良いこと聞いちゃいました。 CSSだけで、文末に…が付与できちゃうんですって! やり方はスタイルを3つ指定するだけ。 overflow: hidden; white-space: no-wrap; text-overflow: ellipsis; 以上です。 これで、文字列がはみ出てしまう…
今日初めてセマンティックバージョンというものを知りました。 軽く調べたのでメモ。 参考: セマンティック バージョニング 2.0.0 qiita.com セマンティックバージョニングとは カンタンに言うと、バージョンの付け方のようです。 1.2.6というバージョンが…
JavaScriptで配列の内容をソートするとき、sort関数を使います。 ただし、sort関数はデフォルトで文字列比較を行ってしまうんですね。 数値比較をするには、引数に比較関数を渡してあげる必要があるんですね。 すっかり忘れていました。 サンプルコード gist…
競技プログラミングで初めて制限時間に引っかかりました。 対処法を考えているうちに、データ構造について1つ学びがあったのでメモします。 ちなみに、重くなった原因はユニーク判定の仕方でした。 最初に書いたコードがこちら。 gist9b15f1b88ba817838fc7 …
例えば、以下のような2重のswitchがあるとします。 gist2f786f89069acd1edce1 まず、主語が何であるかによって分岐します。次に、時間帯によって分岐して、行動をalertします。 そんな2重の条件分岐があるとします。 でも、これってマッピングできるなあと…
今回は独自に作成した加算関数を紹介します。 これの続きです。 chuckwebtips.hatenablog.com 加算関数をつくる目的 JavaScriptのルールでは、'5' + '10'は'510'となります。 見た目的には数値なのに、クオーテーションで囲まれているために、文字列の結合が…
競技プログラミングで3分ほどハマった。検証が楽しくてさらに10分ほどハマった。 '6000' - ('40' + '10') * '50' の結果です。 パット見で分かりますか??? ' ' は文字列を表します。 ふつうに数値として計算したら、3500ですよね。 ところが答えは -19…
stringクラスのsplitとarrayクラスのjoinを使えば、不純物探知ができるよねというお話。 以下のコードを例に取ります。 gist2676ae0c57f3323742be 最初にhelloがたくさん並んだ文字列があります。一見、すべてhelloに見えますね。 次に、split('hello').join…
会社の人に誘われて競技プログラミングを始めました。 競技プログラミングとは? 与えられた問題を、素早く性格に解くプログラミングのイベントです。 競技プログラミング Wiki* Webプログラミングではなく、コンソール上で行えるIO(入出力)プログラミング…
これの続き。 chuckwebtips.hatenablog.com データが取得できたので、ビュー側に表示をしてみます。 ビューとコントローラの作成 ちょっと表示するだけですが、のちのちのことを考えてMVCを採用しました。 いつもの↓ maeharin.hatenablog.com コントローラで…
トラブルシューティング。 Nokogiriを使ってHTMLを取得した際、文字化けしてしまうエラーについて。 encoding error : input conversion failed due to input error が出た場合の対処法。 以下のページを参考にして解決。 http://route477.net/d/?date=20110…
車輪の再発明です。 区切り文字列を配列にしたいとします。 それをいちいちfor文で走査して配列化してしまいました。でも、splitを使えば一瞬だよねというお話。 例えば、以下の変換をしたいとき、 var str = 'abc de fg'; var ary = ['abc', 'de', 'fg']; i…
こちら読み始めました。 vsanna.sakura.ne.jp 前々から興味があったスクレイピング。ついにデビューしちゃいました。 スクレイピングとは あるサイトのあるページからHTMLを取得して欲しい情報を取得することです。 やったこと ローソンの公式サイトから、販…