Afişează mesaje
Pagini: [1]
1  infoarena - concursuri, probleme, evaluator, articole / Infoarena Monthly 2012 / Răspuns: Sir5 : Decembrie 27, 2012, 15:21:53
Cum se facea problema asta m-am chinuit cu niste porcarii de dinamici 3D dar nu mergea.Puteti sa imi spuneti si mie?
Multumesc anticipat.

Salut,

Nu am rezolvat-o, dar cred ca ar putea ajuta ideile urmatoare:
- daca la un moment-dat numarul de 0-uri consecutive e mai mic decat L, atunci acele 0-uri pot fi considerate tot 1-uri.
- daca la un moment-dat numarul de 0-uri consecutive e >= L, atunci trebuie combinate 'cumva' grupurile  11..1, 0..0, 1..1 (bazandu-ne pe faptul ca 0-urile sunt cel putin L, deci nu exista segment care sa treaca din primul grup de 1-uri pana la celalalt grup de 1-uri), poate folosind ceva de genul N[ i ][ j ] = numarul de pavari in care primul segment incepe de la pozitia -i (minus i), iar ultimul se termina la lungime_sir+j - daca am avea aceste valori pentru cele doua siruri de 1-uri, atunci cred ca s-ar putea calcula aceste valori si pentru sirul cu 0-uri la mijloc. (s.a.m.d., iar la final de tot interesandu-ne solutia cu i=j=0)
Mi-ar placea sa vad idei mai simple.
Pagini: [1]
Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines