AtCoder ABC 166の復習

ちょっと時間が取れたので、やってみました



A
入力にARCがきたらABC、それ以外はARCを出力

a = input()
if a == "ARC":
  print("ABC")
else:
  print("ARC")

B
すぬけくん分の配列を持っておき、
各お菓子を持っているすぬけくんの番号をカウントアップする
最後に配列に格納されている数字が0の個数をカウントする

N, K = map(int, input().split())

result = [0]*N
ans = 0

for i in range(K):
  p = input()
  tmp = list(map(int, input().split()))
  #print(tmp)
  
  for j in tmp:
    result[j-1] = 1
  
for i in result:
  if i == 0:
    ans += 1

print(ans)


C
まずはすべての展望台のフラグを0としておく
その後、各々の数を比べていき、より大きい数がある場合、小さいほうの展望台のフラグを立てる
上記を最後まで繰り返し、フラグが0のままの展望台の数を数える

N, M = map(int, input().split())

tower = list(map(int, input().split()))
result = [0]*N
ans = 0

for i in range(M):
  A, B = map(int, input().split())
  #print(A, B)
  
  if tower[A-1] < tower[B-1]:
    result[A-1] += 1
  elif tower[A-1] > tower[B-1]:
    result[B-1] += 1
  else:
    result[A-1] += 1
    result[B-1] += 1

for i in result:
  if i == 0:
    ans += 1

print(ans)


以上。

思ったよりしっかり考えれば解けましたね。
やっぱり時間がないとつらいなぁ・・・。