2013-02-17
Codeforces 166
A. Beautiful Year
問題
- 美しい年とは全ての桁の数値が異なる年である
- 与えられた年以降で最初の美しい年を求める
方針
- ループして調べる
- 提出
- Passed System Test
B. Prime Matrix
問題
- 行列が与えられる
- ある要素を1回の操作で1だけ増やせる
- ある1行全てを素数、または、ある1列全てを素数にしたい
- 最小の操作回数を求める
方針
- 素数を求めてsetに入れておく
- 各要素について、その数以上の素数はlower_boundで求まるので、和を配列に入れる
- 全行、全列のうちの和の最小値が答え
- 提出
- Passed System Test
C. Secret
問題
- 1からNまでのN個の数値からなる集合XをK個の集合Uに分離したい
- Uの任意の2つの要素は互いに素
- Uの全ての和集合はX
- Uの要素は等差数列でないこと
- 条件を満たすUを求める
方針
- 等差数列を満たさないようにするためには要素が3個以上必要
- ということはN >= 3*K が必要 (そうでなければ-1を返す)
- 不規則的に配ればオッケー
- N=9、K=3のとき
- U1に1,2、U2に3,4、U3に5,6,...と2つずつ配ってから、U1に7、U2に8のように配れば不規則
- 余ったら全部U1に配ってよい
- 提出
- Passed System Test
D. Good Substrings
問題
- 文字列Sと、ダメな文字の一覧が与えられる
- ダメな文字を最大でK個まで含む、Sの連続したindexを使用した部分文字列の総数を求める
方針
- とりあえず愚直に
- 提出
- MLE
結果
ooo-- 2682pt 192nd/1677 rating 1687 -> 1680
Cまで解いて40分だったのでまあまあ良かった。
Dはハッシュ使えばいいらしい。
- 7 https://topcoder-g-hatena-ne-jp.jag-icpc.org/
- 4 https://topcoder-g-hatena-ne-jp.jag-icpc.org/keyworddiary/Codeforces
- 3 https://www.google.com/
- 2 http://www.google.com/search
- 2 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&frm=1&source=web&cd=4&ved=0CEMQFjAD&url=https://topcoder-g-hatena-ne-jp.jag-icpc.org/firewood/20120116/1326726454&ei=vvEiUfHnHa70mAX_64CYDw&usg=AFQjCNH8nxBZuUhpa60OfRV12jMH-zdUkA&bvm=bv.42553238,d.dGY
- 2 https://topcoder-g-hatena-ne-jp.jag-icpc.org/agw/20130121/1358797526
- 1 https://topcoder-g-hatena-ne-jp.jag-icpc.org/keyword/Codeforces
- 1 http://www.google.com/url?sa=t&rct=j&q=srm+559+チェス&source=web&cd=3&ved=0CDsQFjAC&url=https://topcoder-g-hatena-ne-jp.jag-icpc.org/firewood/20121124/1353759956&ei=ttwgUcX6IcyakgWQuYD4Bg&usg=AFQjCNHErjXGt-m0dS8nRhlS6XRLj8ByOw
- 1 http://www.google.co.jp/search?hl=ja&safe=off&site=&source=hp&q=srm+558&oq=srm+558&gs_l=mobile-gws-hp.3..0.6690.14051.0.15733.9.7.0.2.2.0.326.1266.0j3j2j1.6.0...0.0...1ac.1.3.mobile-gws-hp.U5kNLafwksM
- 1 https://topcoder-g-hatena-ne-jp.jag-icpc.org/agw/