AtCoder Grand Contest 014
ひさしぶりに競技プログラミングの問題を解いてみた。
AtCoderにはSBCLがつかえるので、Common Lisp で解くことにしてみる。
ただ、C以降は手がでそうにでないので、A と B のみ。
Cookie Exchange
- 初AC http://agc014.contest.atcoder.jp/submissions/1268265
mod
つかっていたところをoddp
,evenp
に http://agc014.contest.atcoder.jp/submissions/1268286(/ ... 2)
を(ash ... 1)
に http://agc014.contest.atcoder.jp/submissions/1268602
気になったこととしては、
各テストケースの実行時間とメモリ消費量は、ほぼ差がない。
しかし、はじめ2つの解答のとき、 in1.txt のケース実行時のみ数値がはねあがっている。
ただ、ash にかえた解答のときは、そうではない。
sbcl の起動に時間がかかってるのだろうか。 sbcl --script Main.lisp
のように実行しているらしいが。
Unplanned Queries
- だめもとでWA http://agc014.contest.atcoder.jp/submissions/1268393
- ちょっとかんがえてみてTLE http://agc014.contest.atcoder.jp/submissions/1268536
- C++ の解答を参考にしてもTLE http://agc014.contest.atcoder.jp/submissions/1268559
make-array
にしてみるとAC http://agc014.contest.atcoder.jp/submissions/1268567loop
をdotimes
にしてみる http://agc014.contest.atcoder.jp/submissions/1268577fixnum
の vector にしてみる http://agc014.contest.atcoder.jp/submissions/1268587
私にとってこのコンテンストは難易度は高めだったので、次はBeginnersに参加してみよう。
Ubuntu 16.10 で skk で日本語入力する
前提
- OSインストールあと、IME は fcitx
- 全角/全角キーでInput Methodは切り替えできる
- 標準の日本語入力と Mozc は使える
- 気分転換のために skk をつかってみてもいいかと思った。
手順
sudo apt install fcitx-skk
でインストールする- Input Method Configurator で skk をつかえるようにする
- SKKの設定を開いて「確定時にリターンキーを押しても改行しない」にチェックをいれておく
使い方
- 全角/半角キーでひらがな入力モードにする
- Shift を押しながらだと変換できるようになる
- 送りがなを入力する前に、再度Shift を押す必要がある
入力例 | 結果 |
---|---|
henkansuru |
へんかんする |
Henkan<SPC>suru |
変換する |
Henkansuruq |
ヘンカンスル |
AKeru |
開ける |
AnagaTiMatigaTteinai |
強ち間違っていない |
モードの切り替え
ひらがな入力モード | 切り替え先 | 備考 |
---|---|---|
q |
カタカナ入力モード | - |
ctrl+q |
半角カタカナ入力モード | - |
l |
半角英数字入力モード | 戻るには ctrl+j |
詳細は /usr/share/libssk/rules/default
以下のJSONファイルを読むといい。
使い勝手について
ひらがなのみを書くなら、非常に楽で、新鮮な感覚が味わえる。 Enter キーを押す回数が減るのかな。次は辞書機能を使ってみたいと思う。
Shift がつらい
Shiftを押しながらの送りがな入力がつらことがあるので、;
で start-preedit するようにした。
これで「強ち間違っていない」は ;anaga;ti;matiga;tteinai
と入力できるようになった。
参考URL
- No skk, no life. https://www.slideshare.net/digitalghost/no-skk-no-life
- #4 SKK+AZIKで快適・効率的な日本語入力を! http://emacs.rubikitch.com/sd1408-ddskk/
- libskk で sticky-shift 的な… https://uwabami.junkhub.org/log/20141025.html