CodeForce-1196D1-RGBサブストリング(簡単バージョン)

オリジナルタイトルリンク

効果の件名:

「R」の文字列で与えられ、「G」、「B」は長さkの選択されたサブストリングは、また、文字を変更する場合に、少なくとも」RGBRGBRGBを必要とするNの長さ、からなる文字列であり、... 「ストリング。

 

アイデア:
小規模なテストデータの簡易版、あなたは暴力を指示することができます。

一致変化は+ 1の番号と一致しない場合は3例(それぞれ「R」、「G」、「B」は開始)、最小のマッチングが終了するたびに更新されます。

 

コード:

1つの#include <iostreamの>
 2  
3  使用して 名前空間STDを、
4  
5  int型Q、N、K、MMIN。
6  チャー ORI [ 3 ] = { ' R '' G '' B ' }。
7  チャー S [ 2002 ]。
8  
9  int型 My_Min(INT A、INT B)
 10  {
 11      リターン A> B?B:;
12  }
 13  
14  INTmain()の
 15  {
 16      CIN >> Q。
17  
18      のためにint型 I = 1 ; I <= Q iが++ 19      {
 20          CIN >> N >> K。
21          MMIN = 20000 22          のためにINT J = 1 ; J <= N; J ++ 23          {
 24              CIN >> S [J]。
25          }
 26  
27          のためにint型 J = 1 ; J <= N-K + 1; J ++ 28          {
 29              のint NUM [ 4 ] = { 0 }。
30              のためのint型 T = 0、T <K、T ++ 31              {
 32                  であれば(S [J + T] = ORI [T%!3 ])
 33                  {
 34                      NUM [ 1 ] ++ ;
35                  }
 36                  であれば(S [J + T]!= ORI [(T + 1)%3 ])
 37                  {
 38                      num個の[2 ] ++ ;
39                  }
 40                  であれば(S [J + T] = ORI [(T +!2)%3 ])
 41                  {
 42                      NUM [ 3 ] ++ ;
43                  }
 44              }
 45              MMIN = My_Min(My_Min(MMIN、NUM [ 1 ])、My_Min(NUM [ 2 ]、NUM [ 3 ]))。
46          }
 47          COUT << MMIN << ENDL。
48      }
 49      リターン 0 50 }

 

おすすめ

転載: www.cnblogs.com/liyishan/p/11257520.html