タグ

2009年6月27日のブックマーク (2件)

  • std::priority_queue - blanket log

    よく嵌るのでメモ。 大きなものから出てくる 比較関数の実装法は頭に入れておく コンパイラのエラーメッセージに期待しない priority_queue<Hoge> pq; のように使うHogeクラス では、デフォルトでは比較に std::less<Hoge> が使われるので operator< の実装が必要。 class Hoge { ... bool operator<(const Hoge &a) const; }; 二つのconst を忘れると悲惨なことになります。 比較関数の部分を分離しようとすると、「型」が必要なので普通の関数でなくファンクタクラスが必要。 struct Compare : public binary_function<Hoge,Hoge,bool> { bool operator()(const Hoge &a, const Hoge &b) { ... } };

    std::priority_queue - blanket log
    syou6162
    syou6162 2009/06/27
    priority_queue
  • ACM/ICPC国内予選突破の手引き

    ACM/ICPCの2008年度の大会日程が公開されています。 国内予選は2008年7月4日,アジア地区予選会津大会は2008年10月25日~27日でホスト校は会津大学です。 参加登録締め切りは2008年6月20日です。 ここではACM/ICPC(ACM国際大学対抗プログラミングコンテスト: ACM International Collegiate Programming Contest)で 国内予選を突破するために必要な情報を載せています。 ACM/ICPC自体については2006年度の横浜大会のWebサイトなどを読んでください。 結局のところ,ACM/ICPCで良い成績を残すにはひたすら問題を解く練習をするしかありません。 ですが,出題される問題の多くはいくつかのカテゴリ,例えば探索問題やグラフ問題,あるいは幾何問題などに分類することができます。 つまり,「傾向と対策」が存在します。

    syou6162
    syou6162 2009/06/27
    すげげ