Diferente pentru blog/probleme-de-formula intre reviziile #5 si #6

Nu exista diferente intre titluri.

Diferente intre continut:

Creearea unei probleme pentru un concurs de programare nu e o munca usoara. De aceea nu ma surprinde cand vad ca la un concurs apare printre probleme una de formula. Totusi nu imi place cand se da o asemenea problema. Un motiv ar fi lipsa de originalitate, e foarte probabil ca problema a fost luata din o carte de matematica. Alt motiv ar fi ca nu testeaza partea de programare la olimpiada de informatica, de obicei programele ce rezolva problemele astea sunt foarte simple implicand doar o instructiune de scriere si una de citire. Cateodata mai ai nevoie sa si implementezi numere mari dar cam atat. Al treilea motiv e ca  nu departajeaza elevii intre ei dupa valoarea sau ideile lor, ci mai mult randomizeaza rezultatele, pentru ca unele formule sunt foarte greu de gasit pe cale matematica, dar sunt mai usor de ghicit.
Sa vedem acum cum gasim formula pentru o problema. Ideea e sa ne uitam la cateva rezultate mici si sa incercam sa ghicim cum arata formula ce le genereaza. Radu Stefan a folosit o metoda destul de misto pentru a rezolva urmatoarea problema:
Pentru a gasi formula ce ne rezolva problema, ne uitam la cateva rezultate mici si sa incercam sa ghicim cum arata formula ce le genereaza.
_Se cere sa se numere in cate moduri se pot aseza k regi pe tabla de sah de n x n astfel incat regii sa nu se atace._ Radu s-a gandit ca solutia va fi un polinom in doua variabile de un grad bleah.
  Daca e un concurs online ne putem uita imediat pe 'Online encyclopedia of integer sequences':http://www.research.att.com/~njas/sequences/ Asta am facut eu pentru a rezolva problema
Radu Stefan a folosit o metoda destul de misto pentru a rezolva urmatoarea problema:
_Se cere sa se numere in cate moduri se pot aseza k regi pe tabla de sah de n x n astfel incat regii sa nu se atace._
  Daca e un concurs online ne putem uita imediat pe 'Online encyclopedia of integer sequences':http://www.research.att.com/~njas/sequences/
Radu s-a gandit ca solutia va fi un polinom in doua variabile P(n, k), iar gradul polinomului nu va fi prea mare (parca el a presupus ca limita e 6). Astfel a generat folosind metoda backtracking solutiile pentru n <= 6 si k <= 6. A considerat coeficientii polinomului ca necunoscute si a rezolvat sistemul de ecuatii liniare date P(n, k) si valorile obtinute prin algoritmul backtracking. Cu acest truc a luat punctaj maxim pe problema respectiva.
 
Trucul asta se aplica usor pe alte probleme, trebuie doar sa stiti sa folositi metoda de rezolvare a sistemelor liniare.
 
Pentru polinoame intr-o singura variabila puteti sa folositi metoda 'diferentelor divizate':http://en.wikipedia.org/wiki/Divided_differences#Forward_differences care e foarte simpla de implementat.
 
 
 
 

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.