u_sho競プロぶろぐ

21歳。みゃーくぴとぅ。ゆる~く続けますたぶん。  デザイン変えました(2019/2/25)これでいきます

AtCoder A埋め

久々のゴルフを兼ねてA埋め。ゴルフはこたつがめ氏が強すぎて萎えた。

ABC100

A - Happy Birthday!
Submission #2892439 - AtCoder Beginner Contest 100
「かつ」を示す「&&」のうち1個はいらないですね。a<9の返り値は0/1なので。

ABC101

A - Eating Symbols Easy
Submission #2892339 - AtCoder Beginner Contest 101
scanfで読み取っていますが、getchar()を使った方が短いです。
43は「+」の文字コードです。これも、s==43?...とやるより、t+=s/45;printf("%d",4-2*s);とした方が2文字少ないです。
45は「-」の文字コードで、char型を整数で割るとint型として計算されるので、s='+','-'のときs/45=0,1です。

ABC102

A - Multiple of 2 and N
Submission #2892151 - AtCoder Beginner Contest 102
includeしていますが、importした方が、cin/coutが使えなくなったとしても、短いですね。
また、n%2?2*n:nの部分ですが、n%2が1か0かによって2*nかnかを出力させたいので、n<<n%2という書き方の方が断然短い。
ここでの<<はビットシフト演算子です。例えばa<<bだと、aの2進数表記で立っているビットを左にbだけ動かします。
a=1、b=2のときはa_(2)=0000000000000001なので、1を左に2個動かしてa_(2)=0000000000000100となり、a=4になります。

ではではここで