kwm_t

kwm_tのメモ

ARC129

もっと落ち着いて取り組もう
■A - Smaller XOR
サンプル2
(n,l,r)=(10,2,19)
n=1010(2)
x^n < nを満たすためには
xは0***の形か100*を満たす必要がある。
あとはl,rの範囲に収まることを忘れないように
■B - Range Point Distance
SlopeTrickするだけだと思いました。違いました。
SlopeTrickライブラリのバグを疑いひたすらデバッグした後に
問題を取り違えていることに気が付きました

dist(l,r,x)=max(0,l-x,x-r)なので問題は
max(0,li-x,x-ri)なのでmax(0,maxL-x,x-minR)になる
あとはmaxLとminRの大小関係
■C - Multiple of 7
2分間に合わなかったらしい
nが7個以下の三角数の和で表せるので、あとは適当に構築する
■D - -1+2-1
以下操作回数をb[i]とおく
b[i]>=0
2b[i]-b[i-1]-b[i+1]+a[i]=0
が必要
c[i] = b[i+1]-b[i]とおくと
a[i] = c[i]-c[i-1]
c[i]-c[0]=a[1]+a[2]+......a[i];
Σc[i] == 0よりc[0]が定まりc[i]も定まる
b[i+1]-b[i]も定まるので b[i]-b[0]が求まるので操作回数が0以上になるように補正する