1
Tak, z obrazku vidim
- in: 7, 4
- domecek ma sirku 7, vysku 4, strecha 4
To je cyklus, kde kazde vyska%4 nevykreslis dve X ale celou linku, plnych sedm X.
Cili 2 cykly, jeden odpocitava vysku, druhy vykresluje.
Příspěvky odeslané z IP adresy 2001:718:2601:26c:69f0:a9...–
peter
peter
- podminka b - a == 1
- pokud neni splnena, je konec posloupnosti
- pokud je splnena, je to zacatek nebo uz probihajici posloupnost
- odectes konec - zacatek a mas delku
- pokud je delka vetsi nez max, tak ulozis zacatek, konec a max delku
v js by se to napsalo jako
function check(a,b)
{
return b - a == 1;
}
arr = [1, 2, 1, 2, 3, 4, 5, 5, 6];
out = {start:0, end:0, max:0};
tmp = {start:0, end:0, max:0};
li = arr.length - 1;
for (i=0; i<li; i++)
{
if (check(arr[i], arr[i+1]))
{
if (tmp.start == 0)
{
tmp.start = i;
}
}
else
{
tmp.start = 0;
tmp.end = i;
if (tmp.max < tmp.end - tmp.start)
{
out.start = tmp.start;
out.end = tmp.end;
out.max = tmp.max;
}
}
}
alert(out.toSource())
Melo by to resit i pripad, kdy je v poli jen 1 prvek. Ale kdyz je pole prazdne, tak to da chybne vsechny nulove v out. Ale urcite by to slo napsat jednoduseji.