Tuesday, June 27, 2006

sudoku


Verovatno ste svi čuli za igru Sudoku.
Pravila su vrlo jednostavna:
Dobijete matricu dimenzija 9x9, koja je dodatno izdeljena na 9 manjih matrica (3x3), u neka polja su upisani brojevi od 1 do 9 i vi treba da popunite celu matricu tako da se u svakom redu i koloni, ali i u unutrašnjoj matrici od 3 x 3 polja, nađu brojevi od 1 do 9, pri čemu se oni ne smeju ponavljati.
Jedan nemački matematičar izračunao je da je ukupan broj kombinacija u ovoj igri 6.670.903.752.021.072.936.960, što, kako negde pročitah, odgovara broju mikrona do najbliže zvezde.
Više o igri naravno možete pročitati na: http://en.wikipedia.org/wiki/Sudoku

Imao sam priliku da se igram malo sa ovim, i ono što sam napravio možete videti ovde.
U pitanju je JAVA aplet koji rešava bilo koji sudoku zadatak (koji ima rešenje, naravno). Ukoliko ima više rešenja, prikazaće prvo na koje naiđe.
Što se algoritma tiče, program prvo pokušava da na "pametan" način dođe do rešenja, znači gleda da li je vrednost nekog polja očigledna, zatim za sva ostala polja računa kandidate za vrednosti, pa na osnovu pravila (da u 1 vrsti, koloni ili maloj matrici svi elementi moraju biti različiti) poljima koja imaju samo 1 kandidata fiksira vrednost. I to se tako vrti dok ne dođe do trenutka u kome sva ne rešena polja imaju više kandidata, tako da ne postoji način da se utvrdi koje vrednosti treba fiksirati.
U tom trenutku u priču se uključuje backtracking algoritam, koji rekurzivno pokušava da pronađe prave vrednosti.
On radi tako što uzme prvo ne rešeno polje i fiksira mu prvog kandidata, zatim za takvu matricu pokušava da nadje rešenje. Ukoliko u nekom trenutku, posle primene svih gore pomenutih pravila bilo koje ne rešeno polje ostane bez kandidata, to je signal da nešto ne valja, i rekurzivna funkcija se vraća nazad i uzima prvog sledećeg kandidata.
Ukoliko neko želi, okačiću source , pa da ga zajedno prodiskutujemo. (naravno, pošto nisam koristio nikakav obfuscator, oni sa malo više znanja mogu i sami da vide source :))

Sunday, June 11, 2006

world cup

Počelo je!
Sećam se Italije '90... To je bilo moje prvo svetsko prvenstvo. Imao sam 8 godina i toliko sam upijao utakmice da se i danas sećam dosta detalja..
Prošli smo grupu... Mateus nam zagorčao život, al ipak Kolumbija i Emirati nisu toliko jaki..
Onda Španija... Dva predivna gola Piksija Stojkovića... Ne sećam se da sam posle ikad video da je neki naš igrač dao lepše golove od tih.
Onda Argentina. I čuveni penali. Šta reći.. Valjda nismo imali sreće. Nisu ni Argentinci u finalu protiv Švaba. A mnogo bi bilo da jesu :) . Penal im je došao glave.

Ameriku '94 pamtim po Bebetu i Romariju i naravno po Robertu Bađu i čuvenom promašenom penalu u finalu. I ništa više. Valjda zbog toga što je bio rat, pa su mi sećanja iz tog perioda malo čudna..

Onda dolazi Francuska '98.
Gledao sam sve utakmice do polufinala. I onda se razbolim. Dobijem mononukleozu i završim u bolnici. A tamo nema televizora. Aaaaaaaaaa. Strašno. Sećam se da sam pitao doktora kad je ujutru došao da me obiđe.. i da mi je rekao za Francuze. Bilo mi je žao Brazila. Njih sam oduvek voleo. Naši standardno dobri :) Mijatova prečka iz penala i gol Davidsa u 93 minutu su bili dovoljni za povratak kući.

Koreje i Japana '02 skoro da se i ne sećam.. Znam se da su Senegalci dobili Francuze, da su Korejanci daleko dogurali, Turci isto, da su Brazilci dobili Švabe u finalu i da je Ronaldo bio najbolji. i to je to.

I sada konačno Nemačka '06. Lepo je počelo. Od 7 utakmica gledao sam 4 cele, ostale po malo. Od naših očekujem da pobede Holandiju sutra. Ako njih ne dobijemo mislim da nemamo šta da tražimo dalje. Realno smo bolji. Sa Argentinom će biti gusto, ako izvučemo remi biće ok. Obale Slonovače se najviše bojim. Jesu izgubili danas od Argentine, ali su pokazali da znaju jaako dobro da igraju.
Drago mi je da ovaj put nemamo neke velike zvezde u timu kao ranije. Čini mi se da su momci složni. Da znaju da igraju su pokazali u kvalifikacijama. Sad je samo bitno da budu hladnih glava. Bez ikakvog straha da udju u duele. I sve će doći na svoje mesto. Petko je strašan lik. Verujem u njega da ih je dobro pripremio.

I jedan link za kraj :)
http://www.largestonlinestadium.com/fan/damjan
oduvek su me kreativni ljudi oduševljavali. Likovi koji su pravili ovaj sajt su mnoogo dobri. Svaka im čast.

Pridružite se ljudi. Da navijamo :)

Wednesday, June 07, 2006

google - web office

Google nastavlja svoj put unapred.
Nova stvarčica iz njihove kuhinje se nalazi na http://spreadsheets.google.com/ . Ne znam da li su se do sada palile crvene alarmne lampe u Redmondu, ali mi se čini da je sad krajnje vreme za to. Kupovinom writely-a i izbacivanjem nove gore pomenute usluge MS dobija žestoku konkurenciju za svoja dva najbolja programa.




Realno, mogućnosti pomenutih googleovih web usluga teško da mogu da dostignu Word i Excel u nekim zahtevnijim radnjama, ali mislim da će bar 80% korisnika biti potpuno zadovoljno njima. Ja hoću :)
Jedva čekam da vidim šta će biti odgovor ekipe iz Redmonda, mada mi se čini da neće uspeti da odgovore na ovo. Bar ne sa ovoliko različitom filozofijom od one koju fura google. MS, kao tipična kapitalistička firma, ako želi da vlada i u narednih 20 godina, mora polako da menja strategiju. Da se što više otvori. To je, čini mi se, neminovnost.
Postali su jako tromi. Poput svake velike organizacije. Nisu spremni na promene koje se dešavaju mnooogo brzo.
Već 5 godina nisu izbacili novu verziju Internet Explorer-a!!! Sve se svodi na krpljenje postojećih stvari.