Forum Informatyka UJ forum Strona Główna Informatyka UJ forum
Rocznik 2005 - czyli najlepsze forum w sieci
 
 FAQFAQ   SzukajSzukaj   UżytkownicyUżytkownicy   GrupyGrupy   GalerieGalerie   RejestracjaRejestracja 
 ProfilProfil   Zaloguj się, by sprawdzić wiadomościZaloguj się, by sprawdzić wiadomości   ZalogujZaloguj 

Zadanie S - Obieg informacji
Idź do strony 1, 2, 3  Następny
 
Napisz nowy temat   Odpowiedz do tematu    Forum Informatyka UJ forum Strona Główna -> Archiwum / 1 rok / 2 i 3 semestr - Algorytmy i Struktury Danych
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

PostWysłany: Nie 23:46, 14 Maj 2006    Temat postu: Zadanie S - Obieg informacji

[link widoczny dla zalogowanych]

Ech, zbiory rozłączne...
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
dzendras
Germański oprawca



Dołączył: 07 Mar 2006
Posty: 1326
Przeczytał: 0 tematów

Skąd: Chorzów

PostWysłany: Pon 0:06, 15 Maj 2006    Temat postu:

Kiedyś my będziemy Sprite...
Powrót do góry
Zobacz profil autora
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

PostWysłany: Pon 23:28, 15 Maj 2006    Temat postu:

Ok, przepchnąłem to wreszcie. Moja intuicja okazała się błędna - chodziło w tym zadaniu tylko o Floyda-Warshalla ;) . Uwaga na stałą: poprawny algorytm ma złożoność p*p*(p+s), ale trzeba trochę pooptymalizować (przez co zarobiłem gwiazdkę ;]). Trzymałem zestaw bitowy reprezentujący wiersz macierzy sąsiedztwa w longintach (32 informacje w jednym). To bardzo pomogło przy redukowaniu stałej (da się zredukować właśnie o wielkość longinta).

Kurczę, dobrze że z Żenczykiem dzisiaj omówiliśmy na ćwiczeniach operacje bitowe przy wczytywaniu i wypisywaniu... jeden problem był z głowy ;) .
Powrót do góry
Zobacz profil autora
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?

PostWysłany: Wto 22:51, 16 Maj 2006    Temat postu:

nie wszyscy maja z Zenczykiem, takze na pewnu wielu by sie ucieszylo, gdybys je opisal ;)
a tak btw. jesli startujac z przekaznika np. nr 1, dotre do przekaznika nr 1, to tez powinienem go wliczac w ilosc przekaznikow do jakich dotarlem? :)
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
Makros
pijak



Dołączył: 01 Gru 2005
Posty: 420
Przeczytał: 0 tematów

Skąd: Kraków

PostWysłany: Wto 23:14, 16 Maj 2006    Temat postu:

jak dla mnie tak... należy go liczyć... :)
Powrót do góry
Zobacz profil autora
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 :]

PostWysłany: Wto 23:31, 16 Maj 2006    Temat postu:

Tak wynika z przykładu.
Powrót do góry
Zobacz profil autora
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?

PostWysłany: Wto 23:41, 16 Maj 2006    Temat postu:

pospieszylem sie troche z postem... nie zauwazylem tego w przykladzie... na szczescie mam to za soba, strasznie nieprzyjemne to zadanie... szczegolnie operacje na bitach... ale zamiast na longIncie operowalem na longWordzie :)
Powrót do góry
Zobacz profil autora
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 :]

PostWysłany: Śro 2:33, 17 Maj 2006    Temat postu:

O zesz ich w morde kopaną znowu dali takie poronione limity czasów! Chciałem ładnie napisać i wszystko sobie sproceduralizowałem ładnie i pieknie, puszczam, queued chyba z 5 minut, no i TLE :evil:
Mozna sie wkurzyc nieziemsko. Teraz troszke zoptymalizowałem... zobaczymy co powie ta krowa Athina...

edited:
Nie wie ktoś jak zrobic te operacje na bitach w taki sposob zeby to cholerstwo przeszło?

edited:
to był zdecydowanie zły pomysł zabierać sie za to zadanie o 1.30 w nocy :/ . 2 godziny zajęło mi zauważenie ze mozna aktualizować pola paczkami po 32 bity :/ ... chyba sie starzeję..
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
r4ku
żul



Dołączył: 09 Lut 2006
Posty: 722
Przeczytał: 0 tematów

Skąd: klikash? :D

PostWysłany: Śro 13:11, 17 Maj 2006    Temat postu:

przeszedlem samego siebie, stracilem 6 h i 8 bomb na tym gownianym zadaniu bo zle policzylem rozmiar macierzy:/ zamiast liczby kolumn 8000/32 policzylem sobie 6000/32. a co ciekawe athina wypluwala ans zamiast s11 wiec myslalem ze mam blad w algorytmie:/
Powrót do góry
Zobacz profil autora
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

PostWysłany: Śro 17:05, 17 Maj 2006    Temat postu:

kg86 napisał:
nie wszyscy maja z Zenczykiem, takze na pewnu wielu by sie ucieszylo, gdybys je opisal

To da się nietrudno wymyśleć, ale może zabrać trochę czasu (zapewne sam tego doświadczyłeś) :) . Proszę bardzo. Niech b oznacza zmienną typu longint (integer, byte, itp.). Jeżeli chcemy ustawić j-ty bit zmiennej b na 1 to piszemy:
Kod:
b := b or (1 shl j)

Jeżeli na 0, to:
Kod:
b := b and not (1 shl j)

Odczytywanie j-tego bitu ze zmiennej b można wyrazić na różne sposoby (rzutowanie nie musi być koniecznie na longinta, równie dobrze można na integera czy byte'a):
Kod:
longint(b and (1 shl j)<>0)

Kod:
longint(b or (1 shl j)=b)

Kod:
(b shr j) and 1


kg86 napisał:
a tak btw. jesli startujac z przekaznika np. nr 1, dotre do przekaznika nr 1, to tez powinienem go wliczac w ilosc przekaznikow do jakich dotarlem?

Naprawdę warto czytać treść zadań :P .

r4ku napisał:
przeszedlem samego siebie, stracilem 6 h i 8 bomb na tym gownianym zadaniu bo zle policzylem rozmiar macierzy:/ zamiast liczby kolumn 8000/32 policzylem sobie 6000/32. a co ciekawe athina wypluwala ans zamiast s11 wiec myslalem ze mam blad w algorytmie:/

Oooo... Kap00ch Zwei :mrgreen: .
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
Fen
zielony żul



Dołączył: 22 Lut 2006
Posty: 946
Przeczytał: 0 tematów

Skąd: Bochnia

PostWysłany: Śro 21:23, 17 Maj 2006    Temat postu:

przeczytałem uwagi zamieszczone powyżej postarałem się starannie zaimplementować ten algorytm... niestety jedna gwiazdka i tak mnie dopadła ;/
Dostałem ANS... już sobie myślę, że coś źle napisałem, że może algorytm coś jest nie tak... ale patrzę do kodu i okazało się, że na przykład nie usunąłem sobie wywołań funkcji pomocnych do debugu :)
Ale za głupotę trzeba płacić :)

co do samego algorytmu to najpierw napisałem sobie "zwyczajną" wersję, w której była tablica 2D booleanów a później dodałem operacje bitowe i tablicę zmieniłem na DWord'y i jak widać poszło :)
Powrót do góry
Zobacz profil autora
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 :]

PostWysłany: Śro 21:48, 17 Maj 2006    Temat postu:

Do debugu polecam dyrektywy kompilatora {$DEFINE DEBUG}, {$IFDEF DEBUG}, {$ENDIF}. Wystarczy wykomentować tą pierwszą, a funkcje degugujące wstawiać między tą drugą a trzecią dyrektywą. Ewentualnie można zadeklarować stałą boolowską i pisać if debug then ..., ale to dla tych, którym fakt wykonywania zbędnych porównań nie przeszkadza ;].
Powrót do góry
Zobacz profil autora
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

PostWysłany: Czw 0:25, 18 Maj 2006    Temat postu:

Wciąż nie mogę w to uwierzyć, ale jest to moje pierwsze zadanie bez bombki (nie licząć kilku rozgrzewkowych). Jestem z siebie dumny 8)
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
Makros
pijak



Dołączył: 01 Gru 2005
Posty: 420
Przeczytał: 0 tematów

Skąd: Kraków

PostWysłany: Czw 0:44, 18 Maj 2006    Temat postu:

Hmmm...?!?!? a co z D :P
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
Fen
zielony żul



Dołączył: 22 Lut 2006
Posty: 946
Przeczytał: 0 tematów

Skąd: Bochnia

PostWysłany: Czw 18:10, 18 Maj 2006    Temat postu:

Madras napisał:
Do debugu polecam dyrektywy kompilatora {$DEFINE DEBUG}, {$IFDEF DEBUG}, {$ENDIF}. Wystarczy wykomentować tą pierwszą, a funkcje degugujące wstawiać między tą drugą a trzecią dyrektywą. Ewentualnie można zadeklarować stałą boolowską i pisać if debug then ..., ale to dla tych, którym fakt wykonywania zbędnych porównań nie przeszkadza ;].


dzięki! jesli mam byc szczery to myślałem, że FreePascal nie ma czegoś takiego. To są oczywiste rzeczy w C/C++, ale, że Paszczak ma takie cos to juz nie wiedziałem :)
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
chlebek
alkoholik



Dołączył: 04 Lut 2006
Posty: 556
Przeczytał: 0 tematów

Skąd: Siedlce\Kraków

PostWysłany: Czw 19:53, 25 Maj 2006    Temat postu:

Czy mogłby ktoś napisać jak za pomoca W-F znalezc ta liczbe przkaznikow i odbiornikow dla danego x, bo jakos nie mam pomyslu, czy trzeba stosowac rekurencje, czy da sie jakos prosciej, dzieki wielkie za pomoc i opisanie dzialania, to juz OSTATNIE marudzenie w tym semestrze :)
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
Source
pijak



Dołączył: 26 Paź 2005
Posty: 92
Przeczytał: 0 tematów

Skąd: Zmc

PostWysłany: Czw 20:36, 25 Maj 2006    Temat postu:

Ja mam takie pytanie: Czy my mamy w tym zadaniu wczytaj wszystkie pytania a nastepnie dopiero q linii odpowiedzi, czy to ma wygladac w trybie: pytanie i odpowiedz od razu ?
Btw moze ktos dobry umiescilby do tego testy jakies ? :wink:

EDIT: No i jeszcze jedno male pytanko ... Jak wyglada sprawa jesli informacja dojdzie do goscia z jego wlasnego urzadzenia i tylko z niego (czyli w i-tym wierszu na i-tym miejscu jest 1). Mam go wtedy liczyć czy nie ?
Powrót do góry
Zobacz profil autora
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 :]

PostWysłany: Czw 21:28, 25 Maj 2006    Temat postu:

Cytat:
Ja mam takie pytanie: Czy my mamy w tym zadaniu wczytaj wszystkie pytania a nastepnie dopiero q linii odpowiedzi, czy to ma wygladac w trybie: pytanie i odpowiedz od razu ?

Wszystko jedno, Athinie to nie robi różnicy.
Cytat:
No i jeszcze jedno male pytanko ... Jak wyglada sprawa jesli informacja dojdzie do goscia z jego wlasnego urzadzenia i tylko z niego (czyli w i-tym wierszu na i-tym miejscu jest 1). Mam go wtedy liczyć czy nie ?

Cytat:
Tak wynika z przykładu.
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
Source
pijak



Dołączył: 26 Paź 2005
Posty: 92
Przeczytał: 0 tematów

Skąd: Zmc

PostWysłany: Czw 21:40, 25 Maj 2006    Temat postu:

Madras: nie powiedziałbym że tak wynika z przykładu, bo żaden z tych gości nie wysyła informacji bezpośrednio do siebie(a mi właśnie o to chodziło).
Np jaka powinna być odpowiedz na dane:
1
3 3
100000
000000
000000
1
1
?
Powrót do góry
Zobacz profil autora
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

PostWysłany: Czw 21:48, 25 Maj 2006    Temat postu:

@chlebek:
Niech bit o wartości 1 oznacza, że na przecięciu i-tego wiersza oraz j-tej kolumny istnieje połączenie z i-tego przekaźnika do j-tego przekaźnika/odbiornika. 0 w przeciwnym wypadku. Używamy W-F, aby ustalić dla których j istnieje połączenie z i-tego przekaźnika. Mamy dane wstępnie tylko połączenia bezpośrednie. Stosujemy odpowiednie operatory logiczne np. dodawanie zastępujemy orem. Potem już wystarczy tylko sumować jedynki w wierszach, aby dostać to, o co chodzi w zadaniu ;) .

@Source:
Radzę uważniej przeczytać treść zadania. Oczywiście wynikiem jest 1 0.
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
chlebek
alkoholik



Dołączył: 04 Lut 2006
Posty: 556
Przeczytał: 0 tematów

Skąd: Siedlce\Kraków

PostWysłany: Czw 22:08, 25 Maj 2006    Temat postu:

ok rozumiem, dzieki Spectro.
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
Source
pijak



Dołączył: 26 Paź 2005
Posty: 92
Przeczytał: 0 tematów

Skąd: Zmc

PostWysłany: Czw 22:26, 25 Maj 2006    Temat postu:

Hehe jak zwykle macie racje :wink:
Dzięki za pomoc, sory za głupie pytania. Całe szczęście mam to zadanie za sobą. Ale miałem całą plejadę błędów: ANS, TLE, S11, RD8. W zasadzie wszystkie z czego innego :D
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
gochapod
[świeżak]



Dołączył: 02 Mar 2006
Posty: 13
Przeczytał: 0 tematów


PostWysłany: Czw 22:30, 25 Maj 2006    Temat postu:

hej ma ktos do tego jakies testy??
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
Krisowski
pijak



Dołączył: 05 Mar 2006
Posty: 218
Przeczytał: 0 tematów

Skąd: z nikąd

PostWysłany: Pią 21:17, 26 Maj 2006    Temat postu:

Kurde, już trzecie TLE dostałem :x . Ma ktoś pomysł co z tym zrobić?? Wszystkie mody i divy zamieniłem na shr i and, program mi się raczej nie pętli (choć pewności nie mogę mieć), buffering też załączyłem :/ . Czy to, że wczytywanie, getbit i floyda-warshalla mam w osobnych procedurach może mieć znaczenie??
Powrót do góry
Zobacz profil autora
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 :]

PostWysłany: Pią 21:31, 26 Maj 2006    Temat postu:

A we W-F-ie ( ;) ) łączysz paczkami, czy po bicie?
Powrót do góry
Zobacz profil autora
Wyświetl posty z ostatnich:   
Napisz nowy temat   Odpowiedz do tematu    Forum Informatyka UJ forum Strona Główna -> Archiwum / 1 rok / 2 i 3 semestr - Algorytmy i Struktury Danych Wszystkie czasy w strefie EET (Europa)
Idź do strony 1, 2, 3  Następny
Strona 1 z 3

 
Skocz do:  
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
Regulamin