|
Informatyka UJ forum Rocznik 2005 - czyli najlepsze forum w sieci
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
oinopion
żul
Dołączył: 28 Lis 2005
Posty: 858
Przeczytał: 0 tematów
Skąd: Kraków
|
Wysłany: Czw 1:59, 06 Kwi 2006 Temat postu: |
|
|
hansu napisał: | Polecam na przyszlosc opcje Edytuj posta... Wlasciwie to moglbym Ci to ciachnac ale zostawie jako edukacyjny przyklad "Jak nie nalezy robic" :P |
hansu, z Ciebie to prawdziwy administrator się zrobił... Może zaczniemy Ci płacić?
|
|
Powrót do góry |
|
|
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
hansu
Nieomylny Admin
Dołączył: 17 Lis 2005
Posty: 1990
Przeczytał: 0 tematów
Skąd: przychodzimy? Czym jestesmy? Dokad zmierzamy?
|
Wysłany: Czw 2:18, 06 Kwi 2006 Temat postu: |
|
|
Nawet jakbym nie byl adminem to bym napisal o tym edytowaniu... Bo zawsze mnie troche mierzilo jak ktos na jakims forum wysylal po kilka postow pod rzad kazdy nastepny z kokekta poprzednich... Nie no ale bez przesady, nikt tu nie bedzie banow jakichs czy chocby warningow za to rozdawal... To po prostu jest prosba o przestrzeganie pewnych regul zeby nam sie wszystkim lepiej z tego korzystalo...
BTW. Z tym placeniem to nie jest taki glupi pomysl... Moze w balsamach ;)
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
kg86
zielony żul
Dołączył: 22 Gru 2005
Posty: 1194
Przeczytał: 0 tematów
Skąd: pochodze?
|
Wysłany: Czw 17:53, 06 Kwi 2006 Temat postu: |
|
|
sorki, bylem zmeczony, nie pomyslalem o tym ;P co nie zmienia faktu, ze innego typu odpowiedzi sie spodziewalem ;P
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
Robson
zielony żul
Dołączył: 21 Paź 2005
Posty: 1274
Przeczytał: 0 tematów
Skąd: Z Lasu :]
|
Wysłany: Czw 18:24, 06 Kwi 2006 Temat postu: |
|
|
Ja bym spróbował taka małą zmiankę:
czasgabinetu := max(czasgabinetu, czaspracownika)
inc(czasgabinetu)
czaspracownika := czasgabinetu;
i teraz przesiać na dół.
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
kg86
zielony żul
Dołączył: 22 Gru 2005
Posty: 1194
Przeczytał: 0 tematów
Skąd: pochodze?
|
Wysłany: Czw 19:19, 06 Kwi 2006 Temat postu: |
|
|
sprobowalem, dziala tak samo, z tym ze kod odrobinke bardziej przejrzysty ;) ale dzieki za dobre checi...
dla tego testu powyzej daje wynik 9, choc wg testerki mateo powinien dac 8... w tym tescie sporo pracownikow sie tloczy do jednego gabinetu, nie wiem, jak na kartce sobie to rozpisalem, rowniez wynik wyszedl mi 9... dwa razy sprawdzilem
a gdy jest taka sytuacja, ze: pracownik przychodzi do jakiegos gabinetu... wychodzi z niego i znowu ma do niego wejsc, jednak wtedy kilku innych rowniez chce do niego wejsc [wszyscy maja identyczny czas wejscia], to:
1) czy ten co wyszedl ma prawo pierwszenstwa, bo teoretycznie pod gabinet przybyl wczesniej?
2) czy ustawiam go w kolejke wg zasad, czyli po numerach pracownikow?
bo ja nie mam pojecia, jak dla tego testu powyzej, moze wychodzic 8... :/
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
Spectro
Mistrz grilla
Dołączył: 09 Mar 2006
Posty: 2306
Przeczytał: 0 tematów
Skąd: Kurdwanów
|
Wysłany: Czw 21:16, 06 Kwi 2006 Temat postu: |
|
|
kg86 napisał: | dla testu 100 i 103 mam RD8 [RTE 216]... jak sie dobrac do tych testow? |
Jeżeli dobrze poustawiany mam dostęp, to testy można skopiować z katalogów:
Kod: | /users/sgistudent/2005/kosinski/testy/H/in
/users/sgistudent/2005/kosinski/testy/H/out |
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
kg86
zielony żul
Dołączył: 22 Gru 2005
Posty: 1194
Przeczytał: 0 tematów
Skąd: pochodze?
|
Wysłany: Pią 1:58, 07 Kwi 2006 Temat postu: |
|
|
na szczescie z dostepem nie bylo wiekszego problemu, takze dzieki :)
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
Robson
zielony żul
Dołączył: 21 Paź 2005
Posty: 1274
Przeczytał: 0 tematów
Skąd: Z Lasu :]
|
Wysłany: Pią 18:54, 07 Kwi 2006 Temat postu: |
|
|
otoz wynikiem jest 8:
Kod: | czas: obslugiwany pacjent(gabinet):
0 4(2)
1 8(2)
2 7(2)
3
4
5 2(2) 6(3)
6 5(2) 1(3) 2(4)
7 3(2) 6(3)
8 ----------------------------------- wyjscie ostatniego pacjenta
9
10 |
sprawdz czy ktorys pacjent nie wchodzi ci na chama na koncu do jeszcze jakiegoś gabinetu (byc moze jak pamietasz wsyztskie gabinety do odwiedzenia w jednej tablicy, to niektórzy mogą wleźć z butami do listy gabinetów innych - a w takim tescie łatwo o to zeby wlezli do 2 albo 3 bo sie czesto powtarzają.
BTW jak usowasz z kopca tych, którzy juz nie maja zadnego gabinetu do odwiedzenia?
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
kg86
zielony żul
Dołączył: 22 Gru 2005
Posty: 1194
Przeczytał: 0 tematów
Skąd: pochodze?
|
Wysłany: Nie 15:26, 09 Kwi 2006 Temat postu: |
|
|
jak znowu przeliczalem na kartce, to tym razem wyszlo mi 8, dzieki czemu moglem znaleźć blad... okazalo sie, ze upheap nie dzialal tak jak trzeba... zdziwilem sie tylko, ze tak powazny blad, mial tak male znaczenie dla wynikow, bo w wiekszosci przypadkow mialem OK. ale poprawilem i przeszlo :)
a z kopca usuwam tak: biore ostatniego i ustawiam go na poczatek i przesiewam w dol... klasyczny delete :)
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
trywialna
pijak
Dołączył: 12 Mar 2006
Posty: 257
Przeczytał: 0 tematów
Skąd: z kontowni:)
|
Wysłany: Śro 17:03, 12 Kwi 2006 Temat postu: |
|
|
Czy do tego zadania trzeba zrobic kopiec taki wskaznikowy? czy na zwykłej tablicy tylko? tnx za odpowiedź:)
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
Spectro
Mistrz grilla
Dołączył: 09 Mar 2006
Posty: 2306
Przeczytał: 0 tematów
Skąd: Kurdwanów
|
Wysłany: Śro 17:06, 12 Kwi 2006 Temat postu: |
|
|
Na zwykłej tablicy. Standard.
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
Rogal
Zjeb z kaszanką
Dołączył: 13 Mar 2006
Posty: 1745
Przeczytał: 0 tematów
Skąd: koło podbiegunowe
|
Wysłany: Śro 17:43, 12 Kwi 2006 Temat postu: |
|
|
trywialna napisał: | Czy do tego zadania trzeba zrobic kopiec taki wskaznikowy? czy na zwykłej tablicy tylko? tnx za odpowiedź:) |
Kopce binarne robi się w zasadzie tylko na tablicy, dlatego że dla każdego elementu adresy Parent / Letf / Right można 'trywialnie' policzyć (odpowidenio i shr 1, i shl 1, (i shl 1)+1). Więc nie ma sensu marnować pamięci na dodatowe wskaźniki.
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
hansu
Nieomylny Admin
Dołączył: 17 Lis 2005
Posty: 1990
Przeczytał: 0 tematów
Skąd: przychodzimy? Czym jestesmy? Dokad zmierzamy?
|
Wysłany: Śro 17:45, 12 Kwi 2006 Temat postu: |
|
|
Robienie kopca wskaznikowego to bylby az przerost formy nad trescia :) Poza tym prawda jest taka ze na tablicy jest duuuuzo prosciej niz na wszkanikach, bo wtedy musialo by byc z parentami i w ogole mozna byloby dostac krecka przy przepinaniu tego wszystkiego. Takze tablica wydaje sie wrecz stworzona do tego :) a taki maly hint odnosnie kopca mi sie jeszcze przypomnial... Mozna sobie w fajny i ciekawy sposob zredukowac ilosc ifow w kodzi kopca z "niewiemilu" do dwoch. Otoz deklarujemy sobie tablice od zera, ale kopiec trzymamy od jedynki. W funkcjach left i right dodajemy tylko warunek if 2*n (ew. + 1) > size then return 0. I wtedy to pole zerowe staje sie zamiast bycia nilem, takim naturalnym wartownikiem. Przed przesiewaniem wstawiamy tam przesiewany element. I wtedy heap up i heap down puszcza sie whilem z jednym tylko warunkiem i jest pewnosc ze to sie nigdy nie zapetli ani nie zacznie pisac poza zakresem... Taki fajny myk na ktory wpadlem piszac to zadanko... Jesli wytlumaczylem to niejasno to krzyczcie, rzuce jakis przykladzik...
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
Rogal
Zjeb z kaszanką
Dołączył: 13 Mar 2006
Posty: 1745
Przeczytał: 0 tematów
Skąd: koło podbiegunowe
|
Wysłany: Śro 19:11, 12 Kwi 2006 Temat postu: |
|
|
Możesz zobrazować ten stos? Wiem że ja głupi jestem. 8)
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
Spectro
Mistrz grilla
Dołączył: 09 Mar 2006
Posty: 2306
Przeczytał: 0 tematów
Skąd: Kurdwanów
|
Wysłany: Śro 20:01, 12 Kwi 2006 Temat postu: |
|
|
Rogal napisał: | (i shl 1)+1 |
Ładniejsza wersja (którą zresztą zastowałem): i shl 1 or 1 ;)
Rogal napisał: | Możesz zobrazować ten stos? |
Co prawda nie jestem hansem, ale tu chodzi o to, że element o indeksie 0 jest ojcem elementu o indeksie 1. Ustawiając wartość porównywalną tego elementu na -infinity uzyskujemy redukcję ifów o warunek i = 0 przy parentowaniu (dzieleniu przez 2).
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
Rogal
Zjeb z kaszanką
Dołączył: 13 Mar 2006
Posty: 1745
Przeczytał: 0 tematów
Skąd: koło podbiegunowe
|
Wysłany: Śro 20:32, 12 Kwi 2006 Temat postu: |
|
|
Spectro napisał: | Rogal napisał: | (i shl 1)+1 |
Ładniejsza wersja (którą zresztą zastowałem): i shl 1 or 1 ;) |
A ja się zastanawiałem, czy zapis i shl 1 jest zrozumiały :lol:
A co do zapisu Hansa to nie rozumiem, czy to pole 0 ma chronić przed nie wejściem na pole 0, czy przed zejściem poniżej liści. I o co chodzi z tym wstawianiem tam elementu przed przesiewaniem?
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
Madras
Omylny Admin
Dołączył: 09 Lis 2005
Posty: 2021
Przeczytał: 0 tematów
Skąd: Z Pokoju :]
|
Wysłany: Śro 21:19, 12 Kwi 2006 Temat postu: |
|
|
I znowu shl/shr... Założę się, że bez przesunięć bitowych, czyli normalnym i div 2/ * 2 bez problemu to zadanie przejdzie. Z igły widły...
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
oinopion
żul
Dołączył: 28 Lis 2005
Posty: 858
Przeczytał: 0 tematów
Skąd: Kraków
|
Wysłany: Śro 21:43, 12 Kwi 2006 Temat postu: |
|
|
Nie ma sensu wstawiać shl i or 1, bo od tego jest opcja -O2 kompilatora.
[Ztego co pamiętam, to nawet bez -O2 się to automatycznie zamienia, dociekliwi: posukajcie w Programmers Guide na freepascal.org]
Ostatnio zmieniony przez oinopion dnia Śro 22:00, 12 Kwi 2006, w całości zmieniany 1 raz
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
Madras
Omylny Admin
Dołączył: 09 Lis 2005
Posty: 2021
Przeczytał: 0 tematów
Skąd: Z Pokoju :]
|
Wysłany: Śro 21:44, 12 Kwi 2006 Temat postu: |
|
|
A to swoją drogą.
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
Rogal
Zjeb z kaszanką
Dołączył: 13 Mar 2006
Posty: 1745
Przeczytał: 0 tematów
Skąd: koło podbiegunowe
|
Wysłany: Śro 22:34, 12 Kwi 2006 Temat postu: |
|
|
Madras napisał: | I znowu shl/shr... Założę się, że bez przesunięć bitowych, czyli normalnym i div 2/ * 2 bez problemu to zadanie przejdzie. Z igły widły... |
Może i tak ale jakoś lepiej się czuję widząc shl / shr zamiast powolnego mnożenia / dzielenia. :twisted:
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
trywialna
pijak
Dołączył: 12 Mar 2006
Posty: 257
Przeczytał: 0 tematów
Skąd: z kontowni:)
|
Wysłany: Śro 22:44, 12 Kwi 2006 Temat postu: |
|
|
Panowie mam jeszcze jedno pytanie.. po co w procedurze downheap wybiera sie wiekszego z nastepników? Ja bo nie moge znaleźć żadnego powodu...
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
hansu
Nieomylny Admin
Dołączył: 17 Lis 2005
Posty: 1990
Przeczytał: 0 tematów
Skąd: przychodzimy? Czym jestesmy? Dokad zmierzamy?
|
Wysłany: Śro 23:01, 12 Kwi 2006 Temat postu: |
|
|
Bo jakbys wybrala mniejszego i wstawila go na miejsce ojca tych dwoch to zaburzyloby to warunek kopca. Spojrz:
Powiedzmy ze to max_kopiec (czyli wyzej maja byc wieksze) i wlasnie wstawilas jedynke i chcesz ja przesiac. Gdybys wybrala 2 to powstaloby:
a to nie spelnia warunku kopca (2 nie jest wieksze od 3). Wiec musisz wybrac 3 i wstawic na gore.
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
Rogal
Zjeb z kaszanką
Dołączył: 13 Mar 2006
Posty: 1745
Przeczytał: 0 tematów
Skąd: koło podbiegunowe
|
Wysłany: Śro 23:03, 12 Kwi 2006 Temat postu: |
|
|
trywialna napisał: | Panowie mam jeszcze jedno pytanie.. po co w procedurze downheap wybiera sie wiekszego z nastepników? Ja bo nie moge znaleźć żadnego powodu... |
Po to, żeby ewentualnie zamienić ojca właśnie z tym większym następnikiem.
Jeśli masz np. ojca o wartości 5 i jego dzieci o wartościach 7 i 3 to musisz zamienić ojca z dzieckiem o wartości 7 żeby przywrócić wartość kopca (tj. ojciec większy od dzieci). Wtedy po zamianie będzie w ojcu 7 a w dzieciach 5 i 3 czyli wszystko się zgadza.
Poza tym, dla jasności, jeśli zdarzy się tak, że ten większ następnik jest mniejszy od ojca to nic nie zamieniasz i przerywasz działanie przesiewania.
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
trywialna
pijak
Dołączył: 12 Mar 2006
Posty: 257
Przeczytał: 0 tematów
Skąd: z kontowni:)
|
Wysłany: Śro 23:15, 12 Kwi 2006 Temat postu: |
|
|
No tak:) Dzięki chłopaki:*
|
|
Powrót do góry |
|
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
trywialna
pijak
Dołączył: 12 Mar 2006
Posty: 257
Przeczytał: 0 tematów
Skąd: z kontowni:)
|
Wysłany: Czw 14:04, 13 Kwi 2006 Temat postu: |
|
|
Gdzie wy ludziska trzymacie kolejnosc z jaka pracownik ma isc do gabinetow? bo ja zrobilam kopiec jako tablice rekordow i tam tez to trzymam jako longint, ale jednak za duzo pamieci mi to zrzera:/
|
|
Powrót do góry |
|
|
|
|
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach
|
fora.pl - załóż własne forum dyskusyjne za darmo
Powered by phpBB © 2001, 2005 phpBB Group
|