Aで沼って終わったかと思ったけどギリ持ち直した 頭の回転がトロすぎる
oo-o- 122:45 (1) 152位 Perf2342
2064->2095 (+31)
A
Submission #66809604 - AtCoder Regular Contest 200 (Div. 2)
むずいだろこれ!60分かかったが......
N=1だったり平行だったりしたらNG。そうでないとき、平行ではない (A1,A2) (B1,B2)のペアがとれる。 このベクトル2本に限定して考えることにしてよい。前者をva,後者をvbとしてarg(va)<arg(vb)となるように並び替えておく。 「vaとのなす角が90度未満、vbとのなす角が90度以上」であるようなベクトルを探す問題になる。これはva+vbを-90度回転させたものが条件を満たす。
B
こっちは10分で片付いた 似たようなの解いてたけど全然違った
A1,A2よりA3が小さいかA1+A2<A3は無理。 A1<=A2としても一般性を失わない。
A3=max(A1,A2)の時、(100,10000) のような形が条件を満たす。A3<A1+A2の間は(100,10000) (110,10000) (111,10000) のように片方について上の桁から順に1に変更すればOK。
A3=A1+A2の場合、どこかで繰上りが必要なので例えば (777,8000) など互いに素で桁上りが起きるようなものを用意すればいい。
C
読んだだけ.....
D
Kが奇数の場合(0,1,...,t) で埋め尽くせる。KがMの約数のとき (0, M/K,2M/K,...) でよい。
それ以外のK偶数が問題になる。K=4は以上で無理ならどれも無理で、K>=6の時は (1,2,...,K/2-2,M-1) が条件を満たす。
残り3分で通った。危なかった~