競技プログラミング
久しぶりの投稿。 方針 両サイドを固定すると、集合Dの最大値が決まる。 左端からk-smoothを満たすように選んで行く。 コード class CliqueParty { public: int maxsize(vector<int> a, int k) { int N = a.size(); sort(a.begin(), a.end()); int ans = 0; FOR(l</int>…
docs.google.com これ区間スケジューリング言われなかったらわからんで!
docs.google.com 正答率80%。
docs.google.com 正答率68%。
docs.google.com 正答率55%解けた〜!!
docs.google.com 正答率73%
docs.google.com 正答率67%
docs.google.com 正答率48%。 方針はあってたけど誤差で死んだ。
考えたことメモ Flip,Flip, and Flip...... C - Flip,Flip, and Flip...... 自分自身を含め周りのますの個数回だけ裏返される。 一番外側のますは偶数回、真ん中のマスは奇数回裏返されるから真ん中のマスの個数答えればOK。 真ん中のマスの数は(行数-2)*(列…
docs.google.com 正答率65%。
docs.google.com 条件付き期待値の求め方知らなかった。 正答率54%。
docs.google.com 正答率68%、誤差が怖い。
docs.google.com 正答率88%だけどTLEギリギリ。
docs.google.com 正答率70%
docs.google.com よく思いつきますわ
docs.google.com 正答率58%
docs.google.com 正答率66% AGC021のBと同じ解法だったのでできた。 最大でO(109)だったけどギリギリ間に合った。
docs.google.com 正答率77%なので解けた
docs.google.com やり直し、dpの練習
docs.google.com あっさりすぎて逆に不安だった
docs.google.com 親同士結んで2部グラフ判定か... 気がつかなかった...
docs.google.com start_i <= period_i だから0開始で良いのか...
docs.google.com
docs.google.com
docs.google.com
docs.google.com
解説 dp[i][j] = i人未満のグループのみで、j人を分ける通り数とする。 このようにdpを定義すると、dpの更新式は以下のようになる。 i人のグループを一個も作らないとき、 残りのN-j人のうち、i人のグループをk個作るとき、 で割るのはグループを区別しない…
TopCoder Statistics - Match Overview 問題概要 文字列Sの中に回文が何個あるか 制約 |S| ≦ 5000 解説 文字列Aが回文の時Aの両サイドに同じ文字が連結した文字列も回文となる。 同じ文字でない文字が連結したらその時点で回文では無くなる。 回文の中心がsi…
TopCoder Statistics - Match Overview 問題概要 Aさんが1以上1000000000以下の数字を思い浮かべる BさんがAさんが思い浮かべた数字がx1,x2,...,xnかどうか聞く Aさんは思い浮かべた数字とxとの差の絶対値yを答える Aさんが思い浮かべた数字が一意に定まる時…
TopCoder Statistics - Match Overview 解説 1 * 1, 2 * 2, ...の正方形が作れるかどうか順に調べた。 左からi右からjのマスが正方形の左上として調べた。 コード class AlienAndGame { public: int getNumber(vector <string> board) { int H = board.size(); int W</string>…