Hej,
mam zadanie jak w temacie, poniżej treść:
"Liczba jest podzielna przez 11. Wtedy, gdy sumując co drugą cyfrę, otrzymujemy w obydwu przypadkach to samo. Np., dla liczby 5841 mamy 5+4=8+1.
Rozmieść podane niżej cyfry w kwadracie (kwadrat 4x4) w taki sposób, żeby powstałe liczby czterocyfrowe, czytane poziomo i pionowo, w przód i wspak, były podzielne przez 11.
0,1,1,2,2,3,3,4,5,6,7,8,8,8,9,9.".
Chciałbym to rozwiązać za pomocą c++,c#, pl/sql(może by było prościej?) - nieważne. Generalnie, pytanie brzmi: jak napisać algorytm?
Początkowo próbowałem za pomocą tablicy dwuwymiarowej [4,4].
Później pomyślałem, że zrobię to za pomocą tablicy jednowymiarowej i odpowiednio posortuję ciąg podanych cyfr (kolejna cyfra-> kolejny pole w kwadracie).
Jeżeli poniższy warunek będzie spełniony, wówczas mamy posortowany ciąg cyfr(zadanie rozwiązane): podane poniżej liczby to indeksy tablicy jednowymiarowej:
0+2=1+3 & 4+6=5+7 & 8+10=9+11 & 12+14=13+15 & 0+8=4+12 & 1+9=5+13 & 2+10=6+14 & 3+11=7+15
wg mnie jest to wyzwanie. Może ktoś coś podpowie bądź znajdzie rozwiązanie? ;)