SRM 516 Div2 Easy NetworkXZeroOne

任意の偶数の長さの区間でoとxの個数が一致するので.隣り合う文字は必ずoかxとなる.
なので答えとなる文字列はoxoxox....かxoxoxo...の2通りのみ.
問題の前提として必ず一つの正解しかありえないので,この2つの文字列と入力を照らしあわせ,一致するものを返せば良い.

class NetworkXZeroOne
{
public:
  string reconstruct(string message)
    {
      int n = message.size();
      string ret1;
      string ret2;
      for(int i = 0; i < n; i++){
        ret1 += (i % 2) == 0 ? 'o':'x';
        ret2 += (i % 2) == 0 ? 'x':'o';
      }
      for(int i = 0; i < n; i++) if (message[i] != '?'){
        if (ret1[i]==message[i]) return ret1;
        else return ret2;
      }
      return "-1";
    }
};