-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!goblin1!goblin.stu.neva.ru!news.glorb.com!news-in-01.newsfeed.easynews
.com!easynews!core-easynews-01!easynews.com!en-nntp-14.dc1.easynews.com.POSTED!
not-for-mail
From: A.L. <l...@a...com>
Newsgroups: pl.comp.programming
Subject: Re: Taki problem programistyczny...
Message-ID: <b...@4...com>
References: <m...@4...com>
<ji3aku$569$1@inews.gazeta.pl> <ji3f8b$jkc$1@inews.gazeta.pl>
<ji3tf7$3mn$1@news.icpnet.pl> <ji55g3$2g0$1@inews.gazeta.pl>
<k...@4...com>
<ji6h9l$erm$1@inews.gazeta.pl>
X-Newsreader: Forte Agent 4.2/32.1118
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Lines: 100
X-Complaints-To: a...@e...com
Organization: Forte Inc. http://www.forteinc.com/apn/
X-Complaints-Info: Please be sure to forward a copy of ALL headers otherwise we will
be unable to process your complaint properly.
Date: Fri, 24 Feb 2012 08:01:45 -0600
X-Received-Bytes: 5575
Xref: news-archive.icm.edu.pl pl.comp.programming:195693
[ ukryj nagłówki ]On Fri, 24 Feb 2012 00:14:55 +0100, Piotr Chamera
<p...@p...onet.pl> wrote:
>W dniu 2012-02-23 20:23, A.L. pisze:
>> On Thu, 23 Feb 2012 11:47:26 +0100, Piotr Chamera
>> <p...@p...onet.pl> wrote:
>>
>>> W dniu 2012-02-23 00:24, n...@m...invalid pisze:
>>>>>> 2. Znakujemy węzły rosnąco liczbami wymiernymi wg kolejności w
>>>>>> wyjściowym porządku (to można zrobić raz dla wielu kolejnych
>>>>>> przekształceń, może być potrzeba dokładnej arytmetyki).
>>>> 1: 1/2; 2: 2/3; 3: 3/4; ... ? Co to daje, mogę prosić o objaśnienie?
>>>
>>> Jeszcze wyjaśnienie dlaczego pisałem o liczbach wymiernych - pomiędzy
>>> dwie dowolne liczby wymierne można zawsze wstawić trzecią, co w tym
>>> przypadku pozwala nie dotykać znakowania wierzchołków, których nie
>>> przesuwamy.
>>
>> To jest mniej wiecej tak jak ja robie i nazywam "brute force"
>
>Może coś mylę, ale:
>
>zakładam, że graf się nie zmienia, zmieniamy tylko porządek,
>więc zbiory poprzedników i następników danego węzła w grafie
>są również stałe - można je wyliczyć i zapisać w jakiejś strukturze
>dowiązanej do każdego węzła.
>
>> Jak wezly A B C D przeorganizujemy
>
>załóżmy znakowanie w jakimś początkowym porządku topologicznym
>od lewej do prawej
>
>(A 1) (B 2) (C 3) (D 4)
>
>jeśli mamy porządek topologiczny, to wszystkie krawędzie wchodzące do
>danego węzła X muszą wychodzić z węzłów o znakowaniach mniejszych niż
>znakowanie przypisane do X a wychodzące muszą prowadzić do węzłów o
>znakowaniach większych niż to przypisane do X.
>
>> na B A D C, to tzreba sprawdzic ze
>
>zmieniamy kolejność i znakowanie tak:
>D przesunęliśmy między B i C więc dostał znakowanie mniejsze od C i
>większe od B, B przestawiliśmy przed A, który był pierwszy w początkowym
>porządku, więc B więc dostał dowolne znakowanie mniejsze od A.
>
>(B 1/2) (A 1) (D 5/4) (C 3)
>
>wystarczy sprawdzić, czy wszystkie krawędzie grafu wchodzące do (B 1/2)
>są z nadal z węzłów o znakowaniu mniejszym od obecnego znakowania
>węzła B i wszystkie wychodzące z B nadal prowadzą do węzłów o znakowaniu
>większym od znakowania węzła B. I analogicznie dla węzła D.
>
>Dla każdego przesuwanego węzła mamy k_we + k_wy sprawdzeń (porównań
>liczb, k_we - liczba krawędzi wchodzących do węzła, k_wy - liczba
>krawędzi wychodzących z węzła).
>
>> A D C sa w zbiorze nastepnikow B, a BAD jes tw zbiorze poprednikow C i
>> tak dalej.
>Powyżej piszę o następnikach i poprzednikach w grafie, a nie w porządku.
>Węzły zawsze są oznakowane rosnąco, zgodnie z porządkiem wyjściowym, a
>po zmianie - testowanym. Jeżeli po zmianie zaburzyliśmy porządek,
>to dla któregoś z przesuniętych węzłów X w zbiorze jego poprzedników w
>grafie znajdzie się węzeł o znakowaniu większym niż jego własne lub w
>zbiorze następników w grafie znajdzie się węzeł o znakowaniu mniejszym
>niż jego własne.
>
>> Wle to nie wystarcza, bo oprocz amiany uporatdkowania moze byc
>> przesuniecie, na przykald A moze byc przesuniety z pozycji 100 na
>> pozycje 50. Moze wtedy "wypasc" ze zbioru nastepnilkow wezlow miedzy
>> 50 a 99, wiec te wezly tzreba sprawdzic.
>Tak, ale nie interesują nas te, z których nie było bezpośredniej
>krawędzi do A, więc jeśli znamy węzły, z których mamy w grafie
>bezpośrednie przejście do A (a ten zbiór dla każdego węzła możemy
>wyliczyć i zapamiętać raz, na początku, gdyż graf się nie zmienia),
>to możemy je łatwo sprawdzić.
>
>Jeśli A przeskoczyło jakiś węzeł X, który w grafie był jego
>poprzednikiem, to będzie miało teraz mniejsze od niego znakowanie -
>jeśli sprawdzimy listę poprzedników A w grafie, to znajdziemy tam teraz
>węzeł X o znakowaniu większym niż A, a pamiętamy, że wszystkie
>poprzedniki powinny mieć znakowanie mniejsze niż A - da nam to
>informację, że krawędź prowadząca z X do A zmieniła kierunek
>i zaburzyliśmy porządek.
>
>Podobnie jahk D soztanie
>> pzresyniety z pozycji 100 na pozycje 200, to moze wypasc ze zbioru
>> poprzednikow, wiec trzeba sprawdzic wezly od 100 do 200.
>>
>> Troche dzuo tych sprawdzen, i pytanie - czy nie mozna mniej?...
>>
>> A.L.
>
>Może w tym co piszę wyżej jest jakaś luka lub błąd, albo źle
>zrozumiałem zadanie, jeśli tak, to proszę o jakiś prosty kontrprzykład
>do analizy.
Musze pzreczytac i sie zastanowic. Co uczynie w weekend :)
A.L.
Następne wpisy z tego wątku
- 24.02.12 16:37 Piotr Chamera
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-01-27 Bydgoszcz => Specjalista ds. Sprzedaży (transport drogowy) <=
- 2025-01-27 Warszawa => Java Developer <=
- 2025-01-27 Warszawa => Data Engineer (Tech Lead) <=
- 2025-01-27 Warszawa => Programista Full Stack (.Net Core) <=
- 2025-01-27 Kto ma PRAWNĄ rację? poseł KO mec. R. Giertych v. mec. B. Lewandowski
- 2025-01-27 Gliwice => IT Expert (Network Systems area) <=
- 2025-01-27 Koszyk okrągły, walec 3x AA, na duże paluszki R6
- 2025-01-27 Warszawa => QA Engineer <=
- 2025-01-27 Warszawa => Analityk Biznesowo-Systemowy <=
- 2025-01-27 Mińsk Mazowiecki => Area Sales Manager OZE <=
- 2025-01-27 Bieruń => Team Lead / Tribe Lead FrontEnd <=
- 2025-01-27 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-01-27 Kraków => User Experience Designer <=
- 2025-01-27 Kraków => iOS Developer (Swift experience) <=
- 2025-01-26 Trump-2 JUŻ bardzo łaskawy [1_500 ułaskawień skazanych za Bidena za "Kawkę na Kapitolu"]