AtCoder Beginner Contest 069/AtCoder Regular Contest 080
はい。
https://beta.atcoder.jp/contests/abc069
A - K-City
Python3
n,m=map(int,input().split()) print((n-1)*(m-1))
サンプル見てると掛け算の仕方が決まるのでそれをそれ。
B - i18n
Python3
s=input() print(s[0]+str(len(s)-2)+s[-1])
問題文の指示通りに出力。
C - 4-adjacent
Python3
n=int(input()) a=[int(i) for i in input().split()] o,q,e=[],[],[] for i in a: if i%4==0: q.append(i) elif i%2==0: e.append(i) else: o.append(i) s=0 for i in range(n): if s==0: if len(o): o.pop() s=4 elif len(e): e.pop() s=2 else: q.pop() elif s==2: if len(e): e.pop() s=2 elif len(q): q.pop() s=0 else: print("No") exit() else: if len(q): q.pop() s=0 else: print("No") exit() print("Yes")
数を3つに分けた。4で割り切れるのと2で割り切れるのと奇数。4で~の両隣はなんでもいい、2で~の両隣は奇数はダメ、奇数の両隣は4で~でないとダメなのをそれをそれ。 もう少しシンプルに書けると思うけど次回にD問題以降見るときのついで予定で放置。
D問題以降はいつかまたお会いしましょうで。。