ABC186 C - Unlucky 7 から学んだ


とりあえず、8 進数への変換は基本文字列。
10 進数も文字列へ統一した方が楽そうだ。

こんな記述でも通った。

Unlucky.py
N = int(input())
lis = []
for n in range(1,N+1):#O(10^5)
    if "7" in str(n) or "7" in oct(n):#worst O(12)
        lis.append(str(n))
print(N-len(set(lis)))
#total O(12*10^5)