Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 10. 01. 2011 15:00

allsucker
Zelenáč
Příspěvky: 14
Reputace:   
 

Pascal - Nejdelší souvislá rostoucí podposloupnost

Zdravim potreboval by som pomoct s ulohou:
Je dána posloupnost N celých čísel, N<=1000. Určete délku nejdelšího souvislého rostoucího úseku v posloupnosti. Například nejdelší rostoucí souvislý úsek obsažený v posloupnosti čísel 4 6 1 6 9 9 6 1 2 má délku 3 (je to úsek 1 6 9).

Vstup: První řádek vstupu obsahuje počet prvků posloupnosti N (0 <= N <= 1000). Druhý řádek obsahuje N prvků posloupnosti oddělených mezerami.

Výstup: Jeden řádek obsahující délku nejdelšího nalezeného rostoucího úseku.

Příklad:
vstup:
9
4 6 1 6 9 9 6 1 2
výstup:
3

Vie niekto pomoct? ..dakujem

Offline

 

#2 10. 01. 2011 15:55

jindra
Příspěvky: 78
Reputace:   
 

Re: Pascal - Nejdelší souvislá rostoucí podposloupnost

Postupoval bych asi takto, jestli je to špatně, opravte mne :)

Neni to sice pascal, je to jen muj zapis. Ale do pascalu by měl snad jednoduše jít přepsat.

Code:

int max = 0;
int current = 1;

for(int i = 0; i < length(vstup); i++)
{
   if(vstup[i] < vstup[i+1])
   {
      current++;
      continue;
   }
   elseif(vstup[i] == vstup[i+1])
   {
     continue;
   }
   else
   {
      if(max<current)
      {
        max = current;
      }
       current = 1;
   }

}

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson