2018-08-01から1ヶ月間の記事一覧

Codeforces Round #307 (Div.2) E. GukiZ and GukiZiana

問題文 http://codeforces.com/contest/551/problem/E 解法 平方分割.まあそれはそうだよね. 実装方法はいろいろありそうだけど,10秒制限が意外と厳しいので,map とか set はできるだけ使わないほうが良い. 各塊は2つ目のクエリに答えるために,(val, i…

Codeforces Round #307 (Div.2) D. GukiZ and Binary Operations

問題文 http://codeforces.com/contest/551/problem/D 解法 結論をいうと行列累乗で解ける. まず重要なポイントとして,各ビットは独立に考えて良い(全く同じ条件なので). つまり,結局この問題は1ビットの問題に帰着される. 1ビットの n 個の整数を,…

Codeforces Round #305 (Div.1) C. Mike and Foam

問題文 http://codeforces.com/contest/547/problem/C 解法 与えられた値を素因数分解して出てくる素数の数は高々6個しかない. gcd を考えるときはこれだけで十分である. 今回は直接答えを求めず,gcd(a, b) != 1 となる個数を求めて最後にトータルから引…

Codeforces Round #305 (Div.1) B. Mike and Feet

問題文 解法1 値の大きい方から追加していって,区間やその幅をset, multiset で管理して頑張るだけ. 実装が悲しい感じになる. ソースコード1 #include <bits/stdc++.h> using namespace std; using pii = pair<int, int>; constexpr int inf = 1e9; int main() { int n; cin >> n; </int,></bits/stdc++.h>…

Codeforces Round #305 (Div.1) A. Mike and Frog

問題文 http://codeforces.com/contest/547/problem/A 解法 mod を取っているので,それぞれ高々 m 回でループするのはすぐわかる. とりあえずそれぞれについて目的の高さになるまで愚直にシミュレートする. この時到達できないならそもそも不可能なので -…