Port 53

明日のための技術メモ

AtCoder ABC164

AtCoder ABC164解いた分だけまとめ。
今回はABC3完。怒涛のスピードランで、Cまでで9:41という最高タイムを叩き出した。
DはTLE解は作れたけど、解説見てよくわからなかったので略。DPまだ完全理解できてない。
色々と探索しない条件を実装したけど、それだけではだめだった模様。

目次

A. Sheep and Wolves

問題文 f:id:saturn-glave:20200428222752p:plain

羊と狼の数を比較して出力変えてやるだけ。

ACしたコード

# coding:utf-8
s, w = map(int, input().split())

if w >= s:
    print('unsafe')
else:
    print('safe')

B. Battle

問題文 f:id:saturn-glave:20200428223007p:plain

while文を使って、ターン毎に体力を減らしながら、体力が0になった瞬間breakする

ACしたコード

# coding:utf-8
a, b, c, d = map(int, input().split())

while True:
    c -= b
    if c <= 0:
        break
    a -= d
    if a <= 0:
        break


# print(a, c)
if a > 0:
    print('Yes')
else:
    print('No')

C. gacha

問題文

f:id:saturn-glave:20200428223255p:plain

文字列をリストで保存した後、set で重複削除をするだけ。

ACしたコード

# coding:utf-8

n = int(input())
s = [input() for _ in range(n)]
s = set(s)
print(len(s))