-
Path: news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.internetia.
pl!nnrpd.internetia.pl
From: Maciej Piechotka <u...@g...com>
Newsgroups: pl.comp.programming
Subject: Re: Zamknięta pętla
Date: Fri, 23 Jan 2009 17:17:00 +0100
Organization: Netia S.A.
Lines: 109
Message-ID: <8...@n...piechotka.com.pl>
References: <gl7hpe$iju$1@mx1.internetia.pl> <8...@n...piechotka.com.pl>
<glc4ud$5b3$1@mx1.internetia.pl>
NNTP-Posting-Host: 77-253-124-24.adsl.inetia.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Trace: mx1.internetia.pl 1232728077 24920 77.253.124.24 (23 Jan 2009 16:27:57 GMT)
X-Complaints-To: a...@i...pl
NNTP-Posting-Date: Fri, 23 Jan 2009 16:27:57 +0000 (UTC)
X-Tech-Contact: u...@i...pl
X-Orig-Path: router.piechotka.com.pl!news
Cancel-Lock: sha1:YNt2t721GoIG5WKHCUPe6CHJ8mY=
User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.3 (gnu/linux)
X-Server-Info: http://www.internetia.pl/news/
Xref: news-archive.icm.edu.pl pl.comp.programming:180813
[ ukryj nagłówki ]Tomasz Kiełpiński <F...@p...onet.pl> writes:
> 'Twas brillig when Maciej Piechotka wrote:
>> Tomasz Kiełpiński <F...@p...onet.pl> writes:
>>> Witam,
>>> Przejrzałem archiwum grupy, pogooglałem, ale wszystko wskazuje na to
>>> że googlać nie umiem, bo nie wierzę żeby podobny temat nie był
>>> poruszany :)
>>> Szukam algorytmu albo wręcz metody matematycznej (mam cały czas
>>> nieodparte wrażenie, że problem da się rozwiązać na poziomie pierwszej
>>> klasy liceum) na sprawdzenie zamkniętej pętli. Chodzi o jeden z
>>> elementów progamu rozwiązującego łamigłówki SlitherLink (znane również
>>> jako Fences lub Pokropek)
>>> Mam daną tablicę dwuwymiarową, zawierającą informacje o każdym
>>> kwadraciku. Wymiary x,y określają położenie kwadracika na
>>> płaszczyźnie, natomiast w wartości zakodowane jest położenie kwadratu
>>> względem pętli (na zewnątrz lub wewnątrz) i stan każdego z jego boków
>>> (Jedna z trzech wartości: jest/nie ma/nie jest oznaczone)
>>> Jak sprawdzić/policzyć czy np. narysowanie górnej krawędzi w
>>> kwadraciku na pozycji 1,1 spowoduje domknięcie pętli.
>>> Pozdrawiam,
>>> Kiełpiś
>> Hmm. Czy nie dało by się potraktować tego jak grafu gdzie koszt
>> przejścia przez nieoznaczoną krawędz jest duży (np. X*Y*1000) a koszt
>> przejścia na przez zaznaczoną mały (np. 1)? Teraz szukasz optymalnej
>> drogi dla każdych z par punktów (tzn. 4 punkty więc 6 dróg) i znajdujesz
>> miminum. Jeśli wynosi ono X*Y*1000 (tzn przejście jest przez ten punkt)
>> to nie ma takiej pętli. Jeśli jest mniejsza to taka pętla istnieje.
>> Pozdrawiam
>> PS. Piszę tak jak rozumiem problem - nie znam tej łamigłówki.
>
> Dzięki Maćku za zainteresowanie.
>
> Koncepcja brzmi dość ciekawie, ale (chyba?) nie spełnia moich
> oczekiwań. Może spróbuję narysować o co chodzi?
>
> Przykład I:
> .___. .___.
> | | | |
> |1,1|2,1|3,1|
> . .___. .
> | |
> |1,2 2,2 3,2|
> .___.___. .
>
>
> Przykład II:
> . .___.___.
> | |
> |1,1 2,1 3,1|
> . . . .
> | |
> |1,2 2,2 3,2|
> .___.___. .
>
> Z mojego punktu widzenia nie ma znaczenia czy brak linii wynika z ze
> stanu "BRAK" czy ze stanu "NIE OZNACZONY" danej krawędzi kwadratu. W
> przykładzie pierwszym umieszczenie linii na dole kwadratu 3,2
> spowoduje zamknięcie pętli (przy czym wszystkie kwadraty z wyjątkiem
> 2,1 będą wewnątrz tej pętli). W drugim przypadku pętla pozostanie
> otwarta. Pętla nie rozgałęzia się natomiast może na tym etapie
> rozwiązywania urywać się. Ogólnie można powiedzieć, że chodzi o
> sprawdzenie czy istnieje jakakolwiek droga między dwoma punktami.
>
> Pozdrawiam,
> Kiełpiś
To dobrze chyba zrozumiałem. Przejściu po linii daj koszt równy np. 1 a po
braku X*Y*1000 (albo nie dawaj - to zapewne zależy od konkretnego
algorytmu
Jak masz taką sytłację:
.__. .__.
| | | |
| | | |
. .__. .
| |
| |
.__.__. .
I sprawdzasz dla dolnego kwadratu czy istnieje droga poza tą krawędzią i
jaką ma długość (istnieje inna droga <=> jest pętla).
Tutaj jest droga o długości 11 < 3*4*1000 = 12000 więc zamykamy pętle.
. .__.__.
| |
| |
. . . .
| |
| |
.__.__. .
Tutaj najkrótszą drogą jest 3*4*1000 (dokładnie przez 'nowo zaznaczone'
pole [Albo - nie ma drogi]) więc nie zamyka to pętli.
A algorytmów wyszukiwania drogi w grafie jest mnówtwo - choćby na
wikipedii.
Pozdrawiam
PS. Brak rozgałęzień to wiedza czy wymóg? Jeśli wiedza to można iść po
koleji zaznaczonymi krawędziami aż do końca. Jeśli wymóg to przypisz
drogom z rozgałęzienia koszt 3*4*1000/uczyń nieprzechadzalnymi.
--
I've probably left my head... somewhere. Please wait untill I find it.
Homepage (pl_PL): http://uzytkownik.jogger.pl/
(GNU/)Linux User: #425935 (see http://counter.li.org/)
Następne wpisy z tego wątku
- 24.01.09 05:49 bartekLTG
- 29.01.09 10:42 Tomasz Kiełpiński
Najnowsze wątki z tej grupy
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
Najnowsze wątki
- 2025-07-13 Fałszywe alerty
- 2025-07-12 dlaczego gadacie z tym debilem
- 2025-07-13 Unia Europejska przygotowuje nowy podatek
- 2025-07-13 Unia Europejska przygotowuje nowy podatek
- 2025-07-12 Warszawa => PC Hardware Expert / Specjalista PC <=
- 2025-07-12 Warszawa => Account Manager - Usługi rekrutacyjne <=
- 2025-07-12 Warszawa => Administrator IT <=
- 2025-07-12 Warszawa => IT Administrator <=
- 2025-07-12 Warszawa => Asystent/tka ds. Administracji <=
- 2025-07-12 Warszawa => Specjalista/stka ds. Organizacji <=
- 2025-07-12 Warszawa => MENA New Business Manager <=
- 2025-07-12 Gdynia => Controlling systems Consultant <=
- 2025-07-12 Warszawa => Developer Microsoft Dynamics 365 Finance & Operations (D36
- 2025-07-12 Warszawa => Programista Microsoft Dynamics 365 Finance & Operations (D
- 2025-07-12 Warszawa => Dyrektor IT <=