>>> a =10>>>print(bin(a))0b1010>>> x =2-1# 2桁目について確認>>> right_shifted_a = a >> x # x+1桁目を1bit目に持ってくる>>>print(bin(right_shifted_a))0b101>>>print(right_shifted_a &1)# 1ならx桁目が1、そうじゃなければx桁目が01
s ="()(())"defis_correct_bracket(s:str)->bool: left =0 right =0for c in s:if c =='(': left +=1else: right +=1ifnot(left >= right):returnFalsereturn left == right
なんか覚えておきたいこと
3点あるときは真ん中を固定
解答が小さいときは解答から考えればいい
x + y && x - yがあるときは45度回転すると良い。
|x| = max(x, -x)
数が大きいときはmodをとる。
gcd(m, 10)なら例えば"123"は1*10**2 % m + 2*10**1 % m + 3*10**0 % mのように表して良い