結果

問題 No.204 ゴールデン・ウィーク(2)
ユーザー naimonon77
提出日時 2015-09-25 14:31:51
言語 C++11(廃止可能性あり)
(gcc 13.3.0)
結果
WA  
実行時間 -
コード長 1,567 bytes
コンパイル時間 548 ms
コンパイル使用メモリ 66,968 KB
実行使用メモリ 6,824 KB
最終ジャッジ日時 2024-10-13 13:37:27
合計ジャッジ時間 1,716 ms
ジャッジサーバーID
(参考情報)
judge4 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 17 WA * 29
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <iostream>
#include <vector>
#include <string>
#include <cstring>
#include <algorithm>
#include <sstream>
#include <map>
#include <set>
using namespace std;


#define REP(i,a,b) for(i=a;i<b;i++)
#define rep(i,n) REP(i,0,n)

typedef long long ll;
typedef unsigned long long ull;
typedef long double lb;
/* ここからが本編 */

int main(void)
{
   int i,j,k;
   int d;
   char s[15] = {0};
   char s1[8];
   /* 入力開始! */
   cin >> d;
   cin >> s >> s1;

   /* 入力終了! */
   int x_cnt = 0;
   int o_first = 0;
   strcat(s,s1);
   s[14] = 'x';
   int holi_cnt;
   int yuukyuu;
   int ans = 0;
   char go = 1;
   for(i=0;i<14;i++) {
      if(s[i] == 'x') x_cnt++;
   }
   for(i=0;i<14 && go ;i++) {
      if(s[i] == 'o') {
         for(j=i;j<14;j++) {
            if(s[j] != 'o'){
               go = 0; break;
            }
            o_first++;
         }
      }
   }
   if(x_cnt < d) {
      ans = d + o_first ;
   }
   else {
      for(i=0;i<14;i++) {
         holi_cnt = 0;
         yuukyuu = d;
         for(j=i;j<15;j++) {
            if(s[j] == 'x' && yuukyuu){
               for(;j<14;j++) {
                  if(yuukyuu && s[j] == 'x') yuukyuu--;
                  else {
                     yuukyuu = 0;break;
                  }
                  holi_cnt++;
               }
               if(j == 14) holi_cnt += yuukyuu; 
            }
            else if(s[j] == 'x' && yuukyuu == 0) break;
            holi_cnt++;
         }
         if(holi_cnt > ans) ans = holi_cnt;
      }
   }


   cout << ans << endl;
   return 0;
}
0