AtCoder Beginner Contest 196 / Python
結果
イマイチ!
イマイチ!!!
問題と解答と勉強
提出したコード
_, b, c, _ = map(int,open(0).read().split()) print(b - c)
提出したコード
from decimal import Decimal, ROUND_FLOOR print(Decimal(input()).quantize(Decimal('0'), rounding=ROUND_FLOOR))
よくわからんけど、こういうときはデシマル君。
そういうことが言いたい問題じゃない気もする。
提出したコード
N = input() L = len(N)//2 if len(N)%2 != 0: print(10**L-1) else: if int(N[:L]) <= int(N[L:]): print(int(N[:L])) else: print(int(N[:L])-1)
これを結構悩んじゃったよねぇ。
そして間違い数を稼いじゃったよねぇ。
さらに時間も使わされちゃったよねぇ。
3番に時間掛け過ぎてあんまり考えられなかった。
ってのもあるけど、これねぇ・・・。
取っ掛かりが何処だかわからんかった。
正解
H,W,A,B=map(int,input().split()) m=H*W dp=[[0]*(A+1) for _ in range(2**m)] dp[0][0]=1 for i in range(m): for j in range(2**i): for k in range(A+1): dp[2**i+j][k]+=dp[j][k] if i%H!=0 and (j>>(i-1))%2==1 and k>0: dp[2**i+j][k]+=dp[j-2**(i-1)][k-1] if i>=H and (j>>(i-H))%2==1 and k>0: dp[2**i+j][k]+=dp[j-2**(i-H)][k-1] print(dp[-1][-1])
DP なん?
これ DP なんかぁ。
ほぉ、なるほどねぇ・・・。
ぬーーーーん。
さっぱりマン。
サッパリパリパリ