Test Message

c657: 最長連續字母

內容

測資有若干行字串。
每個字串是由小寫字母組成。
請找出字串中最長連續的字母,並輸出其長度。
如果有長度相同的連續字母,請輸出最先出現的。


輸入

abbcc
cciiiiiiiixxxxxxxxxxxxguuuuuuufugpccccccc

輸出

b 2
x 12


解題思路

簡單的迴圈與條件判斷。


完整程式碼

AC (2ms, 116KB)
#include <stdio.h>

char input[10000], curr, bestC;
int count, best;

int main()
{
while (scanf(" %s", input) == 1)
{
count = best = 0;
for (int i = 0; input[i]; i++)
{
if (input[i] == curr)
count++;
else
{
if (best < count)
best = count, bestC = curr;
count = 1, curr = input[i];
}
}
if (best < count)
best = count, bestC = curr;
printf("%c %d\n", bestC, best);
}
return 0;
}