Hatena::Grouptopcoder

cafelier@SRM

cafelier のSRM参加記録です。コンテスト中に考えてたことを執拗に全部書き残すとどうなるだろうかという試み本番中にこういうコードが書きたかったなあ、という後で書いた反省コードを書き残す試み

スパムが来たのでしばらくコメント欄をはてなユーザ限定にしています、すみません、

 | 

2010-10-27

SRM486 300

| 11:30 | はてなブックマーク - SRM486 300 - cafelier@SRM

なぜ自分が本番でこれ以外のコードを書こうと思ったのかがよくわからないです。

class OneRegister { public:
   string getProgram(int s, int t) 
   {
      queue< pair<LL,string> > Q;
      set<LL> V;
      for(Q.push(make_pair(s,"")); !Q.empty(); )
      {
         // pop
         LL     c = Q.front().first;
         string p = Q.front().second;
         Q.pop();
         if( !V.insert(c).second )
            continue;

         // goal
         if( c == t )
            return p;

         // next
         if( c <= INT_MAX ) {
            Q.push( make_pair(c*c, p+"*") );
            Q.push( make_pair(c+c, p+"+") );
            Q.push( make_pair(c-c, p+"-") );
            if(c)
            Q.push( make_pair(c/c, p+"/") );
         }
      }
      return ":-(";
   }
};
トラックバック - https://topcoder-g-hatena-ne-jp.jag-icpc.org/cafelier/20101027
 | 

presented by cafelier/k.inaba under CC0