banjalukaforum.com

Dobrodošli na banjalukaforum.com
Danas je 19 Jul 2025, 13:30

Sva vremena su u UTC [ DST ]




Započni novu temu Odgovori na temu  [ 94 Posta ]  Idi na stranicu Prethodni  1, 2, 3, 4, 5  Sledeća
Autoru Poruka
 Tema posta:
PostPoslato: 15 Maj 2005, 16:22 
OffLine
Urednik
Urednik

Pridružio se: 26 Jun 2003, 21:50
Postovi: 2669
Pih ... i ja sam negdje izgubio zadatke ...
Pa ću onda ovako iz glave ...

1) Učitati brojeve M i N, M<N. Zatim učitati N brojeva i bez upotrebe nizova naći M-ti broj po veličini
MOJ KOMENTAR: Ovaj zadatak je malo više sporan ... kasnije ćemo o tome, poenta je što mislim da se nemože riješiti bez upotrebe neke cake ...

2) Grupa drugara ima N para. Sok košta C para a praznu flašu mogu da prodaju za P para. Svaki dan drugovi kupe onoliko soka koliko mogu. Sutradan prodaju prazne flaše i opet rade isto (kupuju maksimalno). Učitati brojeve N,C,P i ispisati koliko dana drugovi mogu da kupuju sok na ovaj način.

3) Data je neka parcela dimenzija MxM. Površina ukupno ima (M-1)^2 stabala. Neka stabla su zdrava a neka su suva. Potrebno je napisati program koji će pronaći najveći pravougaonih stabala koje treba isjeći. Konkretno, treba da ispiše površinu parcele koja će biti oslobođena sječom tih stabala.

Slika

X je horizontalan razmak između stabala, a Y je vertikalan razmak.
Učitati M,X,Y i potom stabla. Stabla su slova S (suvo) i Z(zdravo). Ispis treba da bude običan broj - površina. Primjer:
4
4
4
Z S Z
Z S Z
S Z Z

izlaz: 96
- jer:
najveći pravougaonih je onaj sa dva S. Ako pogledate sliku, vidjećete da sječom tih stabala ukupno sa prostorom oko njih se oslobađa 6 polja, dakle 6*4*4 = 96.
Ovaj zadatak je možda jedini bio normalan ... ipak i kod njega je tekst bio malo žešće glup.


Vrh
 Profil  
 
 Tema posta:
PostPoslato: 17 Maj 2005, 16:51 
OffLine
Majstorski kandidat
Majstorski kandidat
Korisnikov avatar

Pridružio se: 12 Jul 2001, 01:00
Postovi: 457
Lokacija: Banjaluka
Citiraj:
1) Učitati brojeve M i N, M<N. Zatim učitati N brojeva i bez upotrebe nizova naći M-ti broj po veličini
MOJ KOMENTAR: Ovaj zadatak je malo više sporan ... kasnije ćemo o tome, poenta je što mislim da se nemože riješiti bez upotrebe neke cake ...

hmmmm

Drugi zadatak mi se cini isto tako ok.
Kod:
#include <stdio.h>
int main()
{
int n,p,c,i;
printf("Unesite koliko para drugari imaju:\n");
scanf("%d",&n);
printf("Unesite koliko je para sok:\n");
scanf("%d",&c);
printf("Unesite koliko je para prazna flasa:\n");
scanf("%d",&p);
   for(i=0,n=n-p;n>=0;n=n-c+p)
   {
      if (n<p) break;
      i++;
   }
printf("Broj dana je: %d",i);
}

_________________
Ivan M.


Vrh
 Profil  
 
 Tema posta:
PostPoslato: 17 Maj 2005, 18:18 
OffLine
Urednik
Urednik

Pridružio se: 26 Jun 2003, 21:50
Postovi: 2669
verty izvini što te "diram" , ali, šta će tvoj program da izbaci ako unesem slijedeće podatke:

7.6
1.5
1.2

??? Kao i većina nas, ovaj zadatak je bio lagan, uradio si nabrzaka i nisi koristio float već int :P

Prvi je sumnjiv ... ako iko zna način da se taj zadatak stvarno riješi nekim algoritmom, neka nam kaže molim. Ja sam uradio preko steka, i to je poprilično optimizovano (broj brojeva na steku je min(M,N/2)), npr, za M=2, na steku se drže samo dva broja ...

Ono o čemu sam razmišljao ali ne dovoljno, je slijedeće ... ako se program može riješiti pravljenjem "vještačkog" steka (povezanog), siguran sam da bi se code mogao malo "hakirati" pa da se umjesto tog mog linkovanog steka, koriste pozivi funkcije ! Svaki poziv funkcije dodaje lokalne varijable te funkcije na stek ... Tako, umjesto "pushanja" mog steka, mogao bih da pozivam neku rekurzivnu funkciju i da predajem argument o trenutnoj lokaciji, međutim, ovo je em glupo em skupo i osim toga, u pozadini je opet sve to stek (opet ko niz) tako da to ne bi trebalo da bude ono na šta je pisac zadatka mislio...

Kažem, prvi nije uredu, drugi je lagan, samo što smo se mnogi zeznuli oko tog floata (real) ...

Treći je dobar, ali nisam stigao da ga uradim, sve vrijeme sam smišljao algoritam za prvi zadatak ... kad sam konj ... znao sam da će glupi organizatori popustiti kad se zadaci budu ispravljali ... možete misliti, u zadatku piše "bez korištenja nizova" - i znate li koliko su odbijali bodova ako ipak koristite nizove? Umjesto da totalno ne priznaju zadatak, oni su odbijali 5 bodova - od ukupno 30 koje ste mogli dobiti za taj zadatak ... i dakle, sva moja patnja sa stekom, rezultirala bi mogućnošću da dobijem 5 bodova više ... eto ... j****m ti to takmičenje ... "A karte su k*r*e, Izvinte što psujem, jer ja samo pričam, onako kako čujem... Đ. Balašević"

Najvažnije je da je većina prošla na državno ... mada mi je opet žao što ništa nisam uzeo, jer na državnom nemam šanse pored nafixanih bošnjaka koji su prošli pedeset kampova i koječega ...


Vrh
 Profil  
 
 Tema posta:
PostPoslato: 17 Maj 2005, 18:57 
OffLine
Majstorski kandidat
Majstorski kandidat
Korisnikov avatar

Pridružio se: 12 Jul 2001, 01:00
Postovi: 457
Lokacija: Banjaluka
ma totalno sam zaboravio na float .. nisam 3 god radio te mat zadatke ;)
a ovaj prvi je totalno uvrnut.

aaa puko sam poslje sat vremena ;) bez arraya nema nista ... dajte rezultat molim vas :)

_________________
Ivan M.


Vrh
 Profil  
 
 Tema posta:
PostPoslato: 17 Maj 2005, 19:47 
OffLine
Majstorski kandidat
Majstorski kandidat
Korisnikov avatar

Pridružio se: 12 Jul 2001, 01:00
Postovi: 457
Lokacija: Banjaluka
Jedno od mogucih nacina jeste preko "linked tables":

http://stsdas.stsci.edu/bps/linked_list.html
http://www.funducode.com/freec/datastru ... truct6.htm

_________________
Ivan M.


Vrh
 Profil  
 
 Tema posta:
PostPoslato: 17 Maj 2005, 20:02 
OffLine
Urednik
Urednik

Pridružio se: 26 Jun 2003, 21:50
Postovi: 2669
niko nije znao pravi algoritam ... i onda su svi nekako muljali ... najgore je to što niko od prisutnih profesora, a bome i onih koje su zvali telefonom nije znao kako riješiti taj zadatak ...

i šta se onda desilo? svi su se vadili na neka glupa opravdanja ... npr, jedan momak iz Bjeljine, je rekao da ako ne može sa nizovima, onda može sa stringovima!? I odmah upada tu njegova profesorica i objašnjava svima nama kako to može i kako će to komisija da prihvati etc (a da sam ja rekao da ću da radim sa stringom, odmah bi se neko digo i reko bi "a to ne može") ... pokušao sam da objasnim ljudima da se u C-u string deklariše kao char[], dakle niz slova ... džaba ... oni uradiše preko niza opet i odbiše im fantastičnih 5 poena ... vidite, ja sam na početku takmičenja upitao "Koliko ću bodova da dobijem ako uradim sa nizovima?" - "Nikoliko! Ovdje piše bez nizova!" ... i ja uradim preko steka ... tamo negdje na sredini takmičenja, opet se diže buka (niko nije pronašao način da se zadatak uradi na neki normalniji način od steka - a niko nije ni znao šta je stek, tako da je ljude valjda hvatala panika) i opet se diže ona mrkela iz Bjeljine ... problemi, galama etc ... Onda neko ulazi i kaže "Može preko fajla!" !? Ej, ma ... Bezveze ... Damir je onda uradio preko fajlova (upisao je one brojeve u fajl i onda ih isčitavao iz fajla - sve isto kao da je niz u pitanju - dakle ovo nije riješenje) ... etc. Svejedno, Damir se opet namučio pošteno i dobio je max. br. bodova ... Ali zašto su oni magarci dobili samo 5 manje!? Etc ... Phew, isfur ... :wink:

U vezi mog riješenja ... Zadatak ti dođe kao selection sort. Najobičniji. E sad, pošto trebaš da nađeš M-ti po veličini, potrebno ti je da znaš samo brojeve na 1. 2. 3. ... M. mjestu ... Za takve stvari ja sam iskoristio stek. Dakle, prvih M brojeva utrpaš u stek. Za svaki slijedeći broj, pogledaš da li je manji od zadnjeg u steku (stek mora biti sortiran). Ako je manji, onda ništa, ako je veći, onda ga ubaciš u stek, tako da on upadne između dva člana steka tako da je gornji veći a donji manji od njega. Zadnji element steka se pop-uje (izbaci). Tako držiš M elemenata u steku ... I kad sve brojeve poučitaš, zadnji broj (tj prvi ako koristiš pop) je taj broj koji ti treba :)

Mislim da je zadatak zadat onako iz glave, jer, da su u pitanju samo cifre, bila bi druga stvar (A MISLIM DA JESU) ... ali nigdje nije pisalo da se samo cifre mogu unijeti, pisalo je brojevi ... Phew ...


Vrh
 Profil  
 
 Tema posta:
PostPoslato: 17 Maj 2005, 20:18 
OffLine
Majstorski kandidat
Majstorski kandidat
Korisnikov avatar

Pridružio se: 12 Jul 2001, 01:00
Postovi: 457
Lokacija: Banjaluka
u cemu si radio assembleru ?

_________________
Ivan M.


Vrh
 Profil  
 
 Tema posta: Prvi zadatak...
PostPoslato: 17 Maj 2005, 20:40 
OffLine
Početnik
Početnik

Pridružio se: 20 Jan 2005, 00:43
Postovi: 49
NAPOMENA: U ovom zadatku trebalo je naci M-ti broj po velicini (kao sto je che.guevara i rekao), ali je takodje trebalo ispisati i koliko se taj broj puta ponavlja! (Ovaj program ispisuje X,Y gdje je X=M-ti broj po velicini a Y=broj ponavljanja istog broja u unesenom nizu)

Prvo i ja sam bio u nedoumici kako da rijesim taj zadatak jer nizovi nisu dozvoljeni a "nisu dozvoljeni ni stringovi" (mada ce se kasnije ispostaviti drugacije). Jedina ideja koja mi je pala na pamet bila je ideja da pisem u fajl i da odatle manipulisem podacima. Kao glavno varijablu koristio sam varijablu tipa char (dakle samo jedan znak, nije niz). Za ovaj zadatak dobio sam svih 30 (od mogucih 30) bodova, znaci 100%, dakle rjesenje je validno!

Kod:
program prvi_zadatak;
uses wincrt;

var
f:text;
count,tm,tempmax,x,M,N,q:longint;
t:char;
maxtm,max,maxm,tmax: char;

function chtoint(c:char): longint;
begin
case c of
'0': chtoint:=0;
'1': chtoint:=1;
'2': chtoint:=2;
'3': chtoint:=3;
'4': chtoint:=4;
'5': chtoint:=5;
'6': chtoint:=6;
'7': chtoint:=7;
'8': chtoint:=8;
'9': chtoint:=9;
end;
end;

function inttoch(i: longint): char;
begin
case i of
0: inttoch:='0';
1: inttoch:='1';
2: inttoch:='2';
3: inttoch:='3';
4: inttoch:='4';
5: inttoch:='5';
6: inttoch:='6';
7: inttoch:='7';
8: inttoch:='8';
9: inttoch:='9';
end;
end;

function readbr(n:longint):char;
var
i:integer;
a,c:char;
begin
Reset(f);
for i:=1 to n do readln(f,c);
readbr:=c;
end;

function exif(c:char):boolean;
var
temp:boolean;
i:longint;
begin
temp:=false;
for i:=1 to N do if readbr(i)=c then temp:=true;
exif:=temp;
end;

begin
Assign(f,'prvi_zad');
Rewrite(f);
write('Unesite N (broj cifara): ');
readln(N);
write('Unesite M (za M-ti broj po velicini): ');
readln(M);

max:='0';

for x:=1 to N do
begin
write('Broj ',x,' = ');
readln(t);
if chtoint(t)>chtoint(max) then max:=t;
writeln(f,t);
end;

tmax:=inttoch(chtoint(max)-(m-1));
tempmax:=chtoint(tmax);

tm:=1;
x:=chtoint(max)-1;
while (x>=0) do
begin
if exif(inttoch(x))=true then tm:=tm+1;
if (tm=m) and (exif(inttoch(x))=true) then maxm:=inttoch(x);
x:=x-1;
end;

count:=0;
for x:=1 to n do if readbr(x)=maxm then count:=count+1;
writeln;
writeln(maxm,',',count);
Close(f);
end.


Gornji kod pravi na disku fajl prvi_zad (bez ekstenzije) i u njega upisuje brojeve. Nisam siguran da li u pascalu postoji funkcija koja jedan broj pretvara u char (znam da postoji koja pretvara u string) pa sam sam napravio dve funkcije (longint->char i char->longint). Dalje je sve lako i cini mi se dosta razumljivo.
Ovo jeste jedno dosta nezgrapno rjesenje (mislim, koliko je bezveze koristenje jednog fajla da se u njega zapise 6 varijabli???) ali je jedino koje mi je palo na pamet, a i isplatilo se.
Sto se tice stringa, stvarno nije u redu sto su ljudima koji su radili sa stringom priznali 25 (od mogucih 30) bodova. Pa dajte jebote, mogao sam i ja uraditi preko stringa, zadatak bi bio duplo kraci. Ne isplati se ovoliki trud za 5 bodova! Molim lijepo.... Nabijem vas na k...c!

P.S. Iako se na takmicenju radilo u Borland Turbo Pascal 7 za DOS, ja sam ovaj zadatak postovao u varijanti za Windows Pascal, ali mislim da nema neke velike razlike, glavna ideja je tu...


Poslednji put menjao [KS] dana 17 Maj 2005, 21:11, izmenjena samo jedanput

Vrh
 Profil  
 
PostPoslato: 17 Maj 2005, 21:09 
OffLine
Početnik
Početnik

Pridružio se: 20 Jan 2005, 00:43
Postovi: 49
Ovaj zadatak je toliko bezveze (mislim, previse lak za ovaj nivo takmicenja), ali hajde nek im bude. Sto je najgore, prilicno je i lak, kao sto ste vec sami primjetili. Evo je preradjena verzija (koristi tip real, sto ja nisam uradio na testu i tu sam izgubio 10 bodova, a samo 5 bodova me dijelilo od treceg mjesta, tako da me to najvise razocaralo. Lik je imao samo pet bodova vise od mene jer je radio u qBasicu i nije definisao varijablu i u tom slucaju qBasic po defaultu konta da se radi o floating varijabli. To me iznerviralo, inace sam onako, moze se reci zadovoljan). Dakle ovaj zadatak bi vam donio svih 30 bodova na takmicenju, i mislim da imaju samo jedan ili dva takmicara koji nisu uradili ovaj zadatak, sto samo po sebi govori o njegovoj tezini :)

Kod:
program drugi;
uses wincrt;

var
N,P,C:real;
d:longint;

begin
write('Pocetni kapital (N): ');
readln(n);
write('Cijena soka (C): ');
readln(c);
write('Cijena prazne flase (P): ');
readln(p);

while n>=c do
begin
n:=n-(trunc(n/c)*c)+(trunc(n/c)*p);
d:=d+1;
end;

writeln('Broj dana: ',d);

end.


P.S. Ovo je takodje verzija za Win Pascal. Treci zadatak cu uraditi kad skontam koji je najlaksi nacin, i najbrzi...


Vrh
 Profil  
 
 Tema posta:
PostPoslato: 18 Maj 2005, 00:16 
OffLine
Početnik
Početnik

Pridružio se: 04 Maj 2005, 13:33
Postovi: 91
che.guevara je napisao:
Pih ... i ja sam negdje izgubio zadatke ...
Pa ću onda ovako iz glave ...

1) Učitati brojeve M i N, M<N. Zatim učitati N brojeva i bez upotrebe nizova naći M-ti broj po veličini
MOJ KOMENTAR: Ovaj zadatak je malo više sporan ... kasnije ćemo o tome, poenta je što mislim da se nemože riješiti bez upotrebe neke cake ...


evo ti za sada nekoliko jednostavnih rjesenja bez nizova:

1. zapisujes te brojeve u neki fajl
2. pamtis ih u nekom stringu (npr. 0.1|2|-1|5|...)

a vjerujem da ti je onda lako da nadjes sedmi po velicini kad ih vec sve imas na jednom mjestu


Vrh
 Profil  
 
 Tema posta:
PostPoslato: 18 Maj 2005, 12:26 
OffLine
Majstorski kandidat
Majstorski kandidat
Korisnikov avatar

Pridružio se: 12 Jul 2001, 01:00
Postovi: 457
Lokacija: Banjaluka
diii citaj malo postove.
stringovi i nizovi nisu dozvoljeni ili ti nizovi i visedimenzionalni nizovi nisu dozvoljeni.
Upisivanje u fajl je uradio [KS]

_________________
Ivan M.


Vrh
 Profil  
 
 Tema posta:
PostPoslato: 18 Maj 2005, 15:07 
OffLine
Urednik
Urednik

Pridružio se: 26 Jun 2003, 21:50
Postovi: 2669
eh... prvi zadatak je perverzija ... pogotovo to upisivanje i čitanje iz fajla ... diiiiii, ne znam ko si, vidim imaš 1 post ... nisi valjda neko iz mase kog je sramota da kaže, pa pravi novi nalog :)

treći ... za treći još nemam adekvatan algoritam ... može se lako riješiti brute-forceom ali ... ali ... ali evo baš mi pade nešto na pamet ...

Zašto naše takmičenje nikad neće biti pravi izazov?
- zato jer se svi zadaci mogu riješiti brute forceom, nema razloga da nešto spremate
- BF radi jer se svi podaci unose sa tastature, i npr, ako radite graf, niko vam neće ukucati matricu 10x10 ručno, već će se raditi o manjim matricama tipa 4x4 ili 5x5 ... takav input se može komotno riješiti BF-om pa makar složenost algoritma bila O(n^n) ...
- a i praksa je takva ... 1. evo, svi testni primjeri u prvom zadatku su bili jednocifreni brojevi 2. u drugom zadatku najveci testni broj je bio dvocifren ako se dobro sjecam 3. treci zadatak je imao male matrice kao stho rekoh

Tako da ... na našem takmičenju ... ono ... znate kako je Knuth rekao? "
"Ne postoji takav zadatak koji se ne može riješiti dovoljnom količinom sile i gluposti." -- al na engleskom :)

poz


Vrh
 Profil  
 
 Tema posta:
PostPoslato: 18 Maj 2005, 15:21 
OffLine
Početnik
Početnik

Pridružio se: 04 Maj 2005, 13:33
Postovi: 91
Vertygo je napisao:
diii citaj malo postove.
stringovi i nizovi nisu dozvoljeni ili ti nizovi i visedimenzionalni nizovi nisu dozvoljeni.
Upisivanje u fajl je uradio [KS]


nisam ni citao sta su drugi napisali... ti si me pitao ima li neko rjesenje pa eto ti sam ga dao :lol: :angel:

dakle, posto nije nigdje napomenuto da to nije dozvoljeno: trazite od korisnika da unese M puta sve brojeve i dalje je lako!


Vrh
 Profil  
 
 Tema posta:
PostPoslato: 18 Maj 2005, 17:48 
OffLine
Početnik
Početnik

Pridružio se: 04 Maj 2005, 13:33
Postovi: 91
jos jedno rjesenje je preko pokazivaca, no nemojte traziti od mene da se sada prisjecam kako to ide :-? (pokazivac-dinamicka promjenjljiva-moze raditi sve sto mogu i nizovi a bogami i puno vise)


Vrh
 Profil  
 
 Tema posta:
PostPoslato: 18 Maj 2005, 18:10 
OffLine
Početnik
Početnik

Pridružio se: 04 Maj 2005, 13:33
Postovi: 91
che.guevara je napisao:
3) Data je neka parcela dimenzija MxM. Površina ukupno ima (M-1)^2 stabala. Neka stabla su zdrava a neka su suva. Potrebno je napisati program koji će pronaći najveći pravougaonih stabala koje treba isjeći. Konkretno, treba da ispiše površinu parcele koja će biti oslobođena sječom tih stabala.

Slika

X je horizontalan razmak između stabala, a Y je vertikalan razmak.
Učitati M,X,Y i potom stabla. Stabla su slova S (suvo) i Z(zdravo). Ispis treba da bude običan broj - površina. Primjer:
4
4
4
Z S Z
Z S Z
S Z Z

izlaz: 96
- jer:
najveći pravougaonih je onaj sa dva S. Ako pogledate sliku, vidjećete da sječom tih stabala ukupno sa prostorom oko njih se oslobađa 6 polja, dakle 6*4*4 = 96.
Ovaj zadatak je možda jedini bio normalan ... ipak i kod njega je tekst bio malo žešće glup.


rjesenje u basic-u (ne da mi se sada c)

input m,x,y
dim p(m-1,m-1) ' ovdje sadimo
dim d(m-1,m-1,3) ' 0 - max.br.drva ukljucujuci to drvo, 1 i 2 koordinate
for i1=1 to (m-1)
for i2=1 to (m-1)
input p(i1,i2) ' ovdje mozes dodati i error check ako se unese nesto sem Z ili S (pozeljno)
next i2,i1
for i1=1 to (m-1)
for i2=1 to (m-1)
for i3=i1 to (m-1)
for i4=i2 to (m-1)
q=1
for i5=i1 to i3
for i6=i2 to i4
if p(i5,i6)="Z" then q=0 ' mozes dodati i da odmah izleti kada naidje na Z
next i6,i5
if q=1 and (i1-i3+1)*(i2-i4+1)>d(i1,i2,0) then
d(i1,i2,0)=(i1-i3+1)*(i2-i4+1)
d(i1,i2,1)=i3
d(i1,i2,2)=i4
end if
next i4,i3,i2,i1

nadjes max d(x,y,0)
recimo da je to x=1,y=2,d(1,2,1)=2,d(1,2,2)=3
i trazeni pravougaonik je (1,2)-(2,3)
nisam probavao, ali to ti je to

onom malom optimizacijom bi se u opstem slucaju dobio m puta efikasniji algoritam


Vrh
 Profil  
 
 Tema posta:
PostPoslato: 18 Maj 2005, 20:21 
OffLine
Urednik
Urednik

Pridružio se: 26 Jun 2003, 21:50
Postovi: 2669
ehhh ... mogao si barem to da staviš u code tag :P

btw ... svi znamo šta su pokazivači ne moraš da nam obašnjavaš šta su :)

sve su to pogrešna riješenja što si ih naveo, jbg

ovaj treći ... pa nisam ga testirao, a i ne vjerujem da će raditi baš najbolje, koliko vidim ovako odokativno kompleksnost tog "algoritma" je O(m^4*t) gdje je kompleksnost za t od 1 do m^2 što i nije baš pametno ... svakako, rekao sam da su unosi veoma mali, dakle M je malo, pa je i ova stepenasta složenost smiješna (možda, jer u najgorem slučaju, ona iznosi m^6 stho i nije maciji kashalj za m=5). Sve u svemu, pročitaj malo bolje ono što je Knut rekao (valjda je on, nisam baš ni siguran)...

Ja sam smislio riješenje ... princip je veoma brz ... cya till then :P


Vrh
 Profil  
 
 Tema posta:
PostPoslato: 18 Maj 2005, 21:25 
OffLine
Početnik
Početnik

Pridružio se: 04 Maj 2005, 13:33
Postovi: 91
da, komplexnost je ((m^4)/4) (/m ako dodas za m=1..5 ono) a to je sasvim zadovoljavajuce :)
takodje, sa tom optimizacijom za vece brojeve (m>6) kompleksnost dobija logaritamski rast, a to ti je najoptimalnije.

bio sam ja na nekoliko takmicenja i uvijek isto traze, recimo u ovom primjeru bi trazili:

-x,y,m ne smiju biti negativni, m>1, m integer, x,y float ili sta vec
-m se mora ograniciti da ne dodje do preopterecenja memorije
-pri unosu se mora prihvatati samo "z" i "s"
-ako ima vise rjesenja navesti svako
-i takve stvari...

a sto se tice brzine, ma mozes napraviti i O(n!^n!) :roll: i nece ti nista reci


Poslednji put menjao diiiiiii dana 18 Maj 2005, 23:15, izmenjena samo jedanput

Vrh
 Profil  
 
 Tema posta:
PostPoslato: 18 Maj 2005, 23:12 
OffLine
Majstorski kandidat
Majstorski kandidat
Korisnikov avatar

Pridružio se: 12 Jul 2001, 01:00
Postovi: 457
Lokacija: Banjaluka
diiiiiii = probably my friend from old schoold ;) lets see what does he have to say about #1 problem

diiiiiii = это - мой друг от средней школы, позволяет, видят, что шляпа делает он должен сказать о проблеме #1

_________________
Ivan M.


Vrh
 Profil  
 
 Tema posta:
PostPoslato: 18 Maj 2005, 23:35 
OffLine
Početnik
Početnik

Pridružio se: 04 Maj 2005, 13:33
Postovi: 91
Vertygo je napisao:
diiiiiii = probably my friend from old schoold ;) lets se what does he have to say about #1 problem

diiiiiii = это - мой друг от средней школы, позволяет, видят, что шляпа делает он должен сказать о проблеме номер один


primary school :)

naravno, rjesenje je caka ipo

naime u basicu postoji funkcija koja cita karaktere sa ekrana
nazalost, posto sam u xp-u sp2 corp., qbasic ne radi, pa ne znam kako glasi tacno ta funkcija. uglavnom od korisnika trazite da brojeve unese na specifican nacin, recimo ovako nekako:

10,5.87,-234,344,2.676675,3.14,...

i onda ih samo pokupite sa ekrana preko te funkcije (mislim da ide point(x,y))
naravno- postoji ogranicenje od ja mislim 255 karaktera po input funkciji, no i to se da nekako zaobici

95% da se slicna funkcija nalazi i u c.

do
cls
? "unesite";n;"brojeva, odvajajuci ih samo zarezom:"
input a$
loop until unos zadovoljavajuci :):):)

preko point citamo pojedinace znakove sa ekrana, a za dalja uputstva [ks]

mada zvuci smijesno, ovo je POTPUNO validno rjesenje!

moze se izvuci puno vise brojeva ako se predje u graficki zapis i preko tacaka binarno zapisuju brojevi (brute force na djelu, a ista je funkcija point u pitanju) - primjenom slicnih metoda sam rijesio jedan zadatak sa takmicenja gdje treba naci najkraci put do izlaza iz lavirinta zadanog matricom 10x10, gdje je "Z" zid a "." put.


Vrh
 Profil  
 
 Tema posta:
PostPoslato: 19 Maj 2005, 13:17 
OffLine
Urednik
Urednik

Pridružio se: 26 Jun 2003, 21:50
Postovi: 2669
"Potpuno VALIDNO" - ehm, i ja ću malo na ruskom - Это не действительно. Это глупо. Dakle, nije "validno"...

Mislim, zašto svi pokušavaju da "silom" urade program preko nizova ... sve je to na kraju array sort. Sve. I to sa fajlovima, i ovo sa stringovima, i ovo sa ekranom. Sve je to u suštini niz, samo što se pravom nizu pristupa sa niz[index], fajlu sa read(fp, aaa), ekranu sa čim već (siguran sam da point nije, point vraća vrijednost pixela). Etc ... problem je ovdje naći algoritam a ne mudrovati i izmišljati nekakve "trikove" :(

moguće je da ima štamparska greška, skoro pa sigurno ... jer nema logike, ovako ...

ee ... dakle taj treći ... tacno moze se riješiti i tako ... ali ... ko što rekoh ... to je samo zato što je takmičenje malo poglupo pa su unosi maleni ...


Vrh
 Profil  
 
Prikaži postove u poslednjih:  Poređaj po  
Započni novu temu Odgovori na temu  [ 94 Posta ]  Idi na stranicu Prethodni  1, 2, 3, 4, 5  Sledeća

Sva vremena su u UTC [ DST ]


Ko je OnLine

Korisnici koji su trenutno na forumu: Nema registrovanih korisnika i 1 gost


Ne možete postavljati nove teme u ovom forumu
Ne možete odgovarati na teme u ovom forumu
Ne možete monjati vaše postove u ovom forumu
Ne možete brisati vaše postove u ovom forumu
Ne možete slati prikačene fajlove u ovom forumu

Pronađi:
Idi na:  
Powered by phpBB® Forum Software © phpBB Group
Hosting BitLab
Prevod - www.CyberCom.rs