TopCoder Open(2)

System Test Phase の時間に移行したので問題の中身にちょっとだけ触れてみる。僕のセットの問題は平均偏差が規定値以下のケースを求める必要があったのだけど、有効ケース数が0の場合の処理方法が定義されていなかったので、その場合はどうなるのか心配です。つうか、考えてなくて0で割って平均偏差が Nan になって規定値との比較がかならず偽になったので結果的に正しいことになってるけど。0で割ってエラーで止まるんじゃないかと思ったりもしたけど、大丈夫みたい。

結果 499点。Problem Set 内で Rank 200。150位以内には届かないや。

  • メモ
vector<string> tasks; // format: "HH:MM TaskName"
sort(tasks.begin(), tasks.end());
istringstream first(*tasks.begin()), last(*tasks.rbegin());
first >> f1 >> f2;
last  >> l1 >> l2;
return f2 + "-" + l2;

最初と最後のタスク名を取り出す問題。同じ時間の task は存在しないルールになっているので時間を計算しないでいきなりソートすれば OK か。で、stringstream では空白区切りで文字分解できると。デリミタが空白以外のときは split を用意しておいて使えばいいか。