Cod sursa(job #1985159)
Utilizator | Sichet Paul sichetpaul | Data | 27 mai 2017 00:13:08 |
---|---|---|---|
Problema | PalM | Scor | 20 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.64 kb |
#include <fstream>
#include <cstring>
using namespace std;
char v[501];
int pal(int st,int dr) {
while (st<dr) {
if (v[st]!=v[dr]) return 0;
++st;
--dr;
}
return 1;
}
int cresc(int st,int dr) {
int i,d=(dr+st)/2;
for (i=st+1;i<=d;++i)
if (v[i]<v[i-1]) return 0;
return 1;
}
int main()
{ int n,i,Max=0,j;
ifstream f("palm.in");
ofstream g("palm.out");
f.get(v,501);
n=strlen(v);
for (i=0;i<n;++i)
for (j=0;j<=i;++j)
if (pal(j,i) && cresc(j,i)) {
Max=max(Max,i-j+1);
break;
}
g<<Max;
return 0;
}