今日の精進(20200106)

今日はやる気が出なくて全然だった…。しかし連続アウトプットを維持したいので…

Brute-force Attack

問題の制約的に全探索なのだが、forで回してやっていくのは大変なので、深さ優先探索でやる。深さ優先全然やったこと無いので思いつくのに時間がかかった。最後のソートは必要ないと思うが念の為。

# coding: utf-8  
N = int(input())  
l = ["a", "b", "c"]  
ans = []  
def bfs(s, N):  
    # global l  
    if len(s) == N:  
        ans.append(s)  
        return  
    bfs(s+l[0], N)  
    bfs(s+l[1], N)  
    bfs(s+l[2], N)  

bfs("", N)  
ans.sort()  
print(*ans, sep="\n")  

時計盤

長針と短針をdegreeで表して、差分を出力。短針は長針が1分進むごとに0.5度動くことに注意。

# coding: utf-8  
n, m = map(int, input().split())  
n1 = n%12 * 30 + m*6/12  
m1 = m * 6 % 360  
print(min(abs(n1-m1), 360-abs(n1-m1)))  

感想

全然できなかったので明日はもう少しやっていきたい。