要約
2完(A, C)
PyPyはいいぞ
個人的解説
A - Edge Checker 2
b
に対してa * 2 or a* 2 + 1
と合致するか調べた
よく考えればa // 2
でよかった🥲
a, b = list(map(int, input().split()))
if a*2 == b or a*2+1 == b:
print("Yes")
else:
print("No")
B - Longest Uncommon Prefix
問題文が読めない!むずい!けど実装してみたら案外簡単だったやつ。
n = int(input())
s = list(input()[:])
for i in range(1, n):
l = 0
for k in range(n-i):
if s[k] == s[k+i]:
break
l += 1
print(l)
...が、これでTLE。
いろいろ試したが、結局コンテスト中には間に合わず、Twitterで調べた「PyPyで実行したらいけたわ笑」を信じて実行したら通った。
今まで「名前が卑猥なライブラリ」という印象しか持っていませんでした。ごめんなさい。
C - abc285_brutmhyhiizp
A-Z
を一桁とした26進数として処理するのがミソ。
s = str(input())[::-1]
total = 0
def c_to_base(c):
return ord(c) - ord('A') + 1
for i in range(len(s)):
c = s[i]
weight = 26 ** i
total += c_to_base(c) * weight
print(total)
おわりに
久しぶりにやってみたら結構さっくりと解ける問題が多めで楽しかった。
普段はpaizaラーニングみたいな「ロジック組めればOK!」といった感じのところの問題しか解かないので、制限時間にはしばらく苦しめられそう。