プレフィックス問題解決CF1216A []

タイトル効果:だけで「A」と、「」B「の文字の2種類であなたの文字列の長さの$ n $($ N $が偶数である)、そしてこの文字列を与えるために、あなたは、このような$その操作の最小数を使用する必要がありますS [i]は!= sの[I-1](I / 2 =0,1≤i≤n)$(文字列で始まる場合)、および変更された文字列を出力します。

洪水の問題?等しいそのうちの1つは2つの2ホップは、変更を配置します。

コードの場合:

#include <cstdioを> 

インラインINT読み出す(){ 
	int型、R = 0、F = 1。
	チャーC = GETCHAR()。
	一方、(C < '0' || C> '9'){IF(C == ' - ')は、f = -1; C = GETCHAR();} 
	一方(> = '0' && C <= '9 C ')R =(R << 1)+(R << 3)+ C-'0'、C = GETCHAR()。
	R * Fを返します。
} 

N INT、ANS。

チャーS [200002]、AB [2] = { 'A'、 'B'}。

INTメイン(){ 
	scanf関数( "%Dを\ n"、&N); 
	scanf関数( "%sの"、S); 
	以下のために(; iがn <; I = 1 int型、I + = 2)
		であれば(S [I] == S [I-1])S [I-1] = AB [(S [I-1] - '' )^ 1] ++ ANS。
	printf( "%d個の\ n%s"は、ANS、S); 
	0を返します。
}

  

おすすめ

転載: www.cnblogs.com/wyzwyz/p/11564468.html