Pagini recente » Cod sursa (job #2495678) | Cod sursa (job #2350064) | Cod sursa (job #1753956) | Cod sursa (job #1159567) | Cod sursa (job #636632)
Cod sursa(job #636632)
#include <iostream>
#include <fstream>
#include <string.h>
using namespace std;
const int nmax = 1 << 9;
char S[nmax];
int main()
{
ifstream in("palm.in");
ofstream out("palm.out");
in.getline(S, nmax);
int M = 1, L = strlen(S), i, C, p, j;
for(i = 1; i < L; i++)
{
if(S[i - 1] == S[i])
{
C = 2;
p = i << 1;
for(j = i + 1; j < L && p - j - 1 >= 0; j++)
if(S[j] == S[p - j - 1] && S[j] <= S[j - 1])
C += 2;
else break;
if(M < C)
M = C;
}
else if(S[i - 1] == S[i + 1] && S[i - 1] <= S[i])
{
C = 3;
p = i << 1;
for(j = i + 2; j < L && p - j >= 0; j++)
if(S[j] == S[p - j] && S[j] <= S[j - 1])
C += 2;
else break;
if(M < C)
M = C;
}
}
out << M;
return 0;
}