Cod sursa(job #1618972)

Utilizator petrica_norbyPetrica Norbert Mark petrica_norby Data 28 februarie 2016 10:27:06
Problema Fractal Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.86 kb
#include <fstream>
#include <cstring>
#include <algorithm>
#include <queue>
using namespace std;

ifstream fi("charlie.in");
ofstream fo("charlie.out");

int n,i,j,k,m,u,s,maxi,x,y,p;
char a[100005];
bool switchy;


int main()
{

  fi>>p;
  fi.get();
  fi.getline(a,100005);

  n=strlen(a)-1;

if(p==1){

  k=0;
  for(i=0;i<=n-1;i++){
    if(a[i]>a[i+1])switchy=1;
      k++;break;
  }

  for(j=i+1;j<=n-1;j++){
    if((a[j]>a[j+1] and switchy==0)or
       (a[j]<a[j+1] and switchy==1)){
        k++;
        if(switchy==1)switchy=0;
        else switchy=1;
       }
    else{
        if(a[j-1]>a[j])k--;
        if(k>maxi)maxi=k;
        k=1;
    for(u=j;u<=n-1;u++){
        if(a[u]>a[u+1]){
        switchy=1;
        j=u+1;break;
        }
    }

       }
    }
    if(k>maxi)maxi=k;

   fo<<maxi;

  }

    return 0;
}