ABC191 - Atcoder/Python精進のための解説メモ
2022/12/27
ABC191 - A.Vanishing Pitch
AtCoder公式 | ABC191 - A.Vanishing Pitch解答
v, t, s, d = map(int, input().split())
print('No' if t <= d / v <= s else 'Yes')
要点解説メモ
- こういう時、比較演算子を連結できるpythonは良いよね
ABC191 - B.Remove It
AtCoder公式 | ABC191 - B.Remove It解答
n, x = map(int, input().split())
aaa = list(map(int, input().split()))
print(*[a for a in aaa if a != x])
要点解説メモ
- popとかしなくても、条件に合っているリストを作って、普通に出力すれば良さそう
- print(*[])でリストをそれぞれ出力できるのは便利なので、覚えておくの大事
ABC191 - C.Digital Graffiti
AtCoder公式 | ABC191 - C.Digital Graffiti解答
h, w = map(int, input().split())
sss = tuple(input() for _ in range(h))
ans = 0
for i in range(h - 1):
for j in range(w - 1):
a = (sss[i][j], sss[i][j + 1], sss[i + 1][j], sss[i + 1][j + 1])
if a.count(".") == 1 or a.count(".") == 3:
ans += 1
print(ans)
要点解説メモ
- 頂点を数えたいので、点(i, j)が頂点の条件を考える
- ある4マスに注目したときに、"#"が1or3つなら頂点が1つある
- 解説によると、自己交叉がない(▷◁こういうかんじの自身の交叉がない状態のことぽい)ので、"#"が2つの場合は対角線上に"#"が配置されずに隣り合う。だから2のときは頂点にならない。あんまり想定してなかったけどたしかに。
ABC191 - D.
AtCoder公式 | ABC191 - D.解答
まだ解いていません