Math

CODE FESTIVAL 2017 qual A,E: Modern Painting

http://code-festival-2017-quala.contest.atcoder.jp/tasks/code_festival_2017_quala_eまず最初に縦の向きに人を動かすとします。すると領域は二つに分断されます。そのうち一つについて横に進む人がX人、上から下に進む人がY人、下から上に進む人がZ人だ…

AtCoder Regular Contest 077D: 11

http://arc077.contest.atcoder.jp/tasks/arc077_bARC077に参加。CとEは結構すぐわかった。D解けないのはさすがにまずい。 余事象で考えればすぐわかる。ずっと足し合わせで求めようとして頭がこんがらがった。 でも足し合わせても求められるくらい頭良くし…

Codeforces Round #419B: Karen and Test

http://codeforces.com/contest/815/problem/B手を動かすのは大事ですね…実験すると4周期ごとにパスカルの三角形が出てくることに気づく。 int N; ll A[MAX_N]; ll F[MAX_N]; ll D[10][10]; bool sign[10][10]; ll mod_pow(ll a, ll n) { if(n == 0) return …

AtCoder Grand Contest 016C: +/- Rectangle

http://agc016.contest.atcoder.jp/submissions/1365887 まあわかれば大したことないんだけど。Hがhで割れて、Wがwで割れる時、h*wの長方形を左上から詰めていくと(H/h)*(W/w)個の長方形がきれいに収まる。 これらの長方形内のh*w個の数の和は負なのでH*W全…

AtCoder Regular Contest 075 E: Meaningful Mean

http://arc075.contest.atcoder.jp/tasks/arc075_c条件を数式に落とし込むと ∑(i=0→r)Ai - rK という値について考えればいいことがわかる。数式を使うと独立性に気付ける問題だった。 あとは適当に座圧してBITで数え上げればよい。 int n; //BIT 1-origin ll…