水面下の夢

競プロやイラストに興味があります.メインブログがここ.同人サークル「かのらぶ」のページはこっち( https://yumechi0525.amebaownd.com ).ブログアイコンはYaQ(@8_9_00)さんから.

日報的な(2016/01/21)

リアルが忙しすぎて更新ができないんですが^^; *1

なんかひたすらTeX関係


TeXを使っているということはお察しください.とりあえず使えそうなものをひたすらリンク貼っておきます.


リストの幅調整関係


qiita.com


d.hatena.ne.jp


フォントサイズ関係


文系のマカーにも「使える」LaTeX


\ref commandのテンプレート


myref - MyTeXpert


※注意:ここより下の部分が中括弧の数が一致していないので,手作業で直すこと

\newcommand* \fullchapref}[1]{\chapref{#1}\pref{chap:#1}}%
図表をその場に強制的に出力する


TeXで図をコード記述位置に強制的に出力する - Wiki 小さなそして広がっていく世界


※注意:これ学会とかでは禁止になっているところもあったようなきがするので,ご使用の際には学会ごとのTeXフォーマットを書くにしたほうが良いと思います….*2

git diff コマンドを使う

easyramble.com

pythonのdictにあるgetメソッドを使う


リファレンスをまず見る.


4. 組み込み型 — Python 3.5.1 ドキュメント


というわけで,利用例.

d = {"hoge":1}
print(d.get("huga", -1))

とすると,-1が出力される.ちなみに-1の部分は,デフォルト値なので省略できる(その場合は,Noneが返ってくる)

ってことはこういうクソコードを書かなくても良いということに…

if newkey not in dic:
    dic[newkey] += value
else:
    dic[newkey] = value

みたいなコードが,

dic[newkey] = dic.get(newkey, 0) + value

みたいにかけるわけですね,これは使えそうだ.


というわけで,yukicoderの新規性の虜という問題で試しに書いてみました.


#72028 No.182 新規性の虜 - yukicoder

num = int(input())
appeared = {}
for elem in input().split():
    appeared[elem] = appeared.get(elem, 0) + 1
print(sum([i for i in appeared.values() if i < 2]))


やったぜ!!ん…



これそもそもCounter使えばforループ自体いらないですね…


#72030 No.182 新規性の虜 - yukicoder

from collections import Counter
_ = input()
print(sum([1 for i in Counter(input().split()).values() if i < 2]))


まあこういうこともありますが,次回以降getを使ってうまくコーディングできる場面も出てくるかと思うので,しっかり覚えておきたいです.




ッて感じですかね….乱雑更新でした.

*1: お察しください

*2: 私が今書いてるのは,フォーマット割と自由なので大丈夫なはず