Rozmowy na temat prac konkursowych |
Rozmowy na temat prac konkursowych |
4.11.2010, 02:12:54
Post
#21
|
|
Grupa: Przyjaciele php.pl Postów: 1 202 Pomógł: 117 Dołączył: 13.04.2007 Skąd: 127.0.0.1 Ostrzeżenie: (0%) |
No to i ja wkleję mojego zamulatora Ale mi nie wyszło Masakra
http://snippie.net/snip/1304797a A wszyscy mówili, żeby potestować, zoptymalizować -------------------- |
|
|
4.11.2010, 07:58:30
Post
#22
|
|
Grupa: Zarejestrowani Postów: 1 319 Pomógł: 118 Dołączył: 26.11.2003 Skąd: Lublin Ostrzeżenie: (0%) |
No więc poniżej i mój kod Trochę nawalone pętli, ale szedłem wierszami
http://wklej.org/id/412341/ Może znajdzie się chętny, co by wrzucił wszystkie nasze prace, które tu udostępnimy na jeden serwer i odpalił testy jakieś? Ten post edytował my salsa 4.11.2010, 08:15:26 -------------------- scriptun.com. Startup z poradnikami do gier ttp.zone i ttpzone.pl
|
|
|
4.11.2010, 08:12:06
Post
#23
|
|
Grupa: Zarejestrowani Postów: 654 Pomógł: 121 Dołączył: 27.10.2007 Skąd: Poznań, Łódź Ostrzeżenie: (0%) |
Gdy patrzę na Wasze kody to mam dziwne odczucie, że chyba troszkę namieszałem z moim rozwiązaniem. Czyżby myśl, iż nie sprawdziłem wszystkiego dokładnie była prawdziwa...
Fragment kodu (w pracy mam tylko to) dekodującego parametry:
-------------------- Kliknij jeśli moja odpowiedź Ci pomogła.
askone.pl |
|
|
4.11.2010, 08:19:42
Post
#24
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 10.12.2007 Ostrzeżenie: (0%) |
Mój kod: http://snippie.net/snip/b349642b
Tym testuję: http://snippie.net/snip/0da66426 - trochę jak stary kowboj, ale daje rozsądne wyniki i minimalizuje przypadkowość (przydało by się tylko jeszcze więcej iteracji) Jak się okazuje o kilku rzeczach zapomniałem, kilku nie przewidzialem. Zobaczymy Z kilku tricków jestem zadowolony:
- działa dla ciągu dowolnej długości (trick z sumą modulo dla 2 poprzednich wyrazów - tu pomysł ayeo podsunął) - do generowania prostokątów użyłem jednej pętli - generuję wszystkie 3 na raz Mam nadzieję, że procedura testowa będzie w miarę miarodajna. Natomiast jeśli będzie taka jak w regulaminie to może wygrać każdy kogo kod przejdzie 1 etap Powodzenia! |
|
|
4.11.2010, 08:29:42
Post
#25
|
|
Grupa: Zarejestrowani Postów: 1 319 Pomógł: 118 Dołączył: 26.11.2003 Skąd: Lublin Ostrzeżenie: (0%) |
Mój kod: http://snippie.net/snip/b349642b Tym testuję: http://snippie.net/snip/0da66426 - trochę jak stary kowboj, ale daje rozsądne wyniki i minimalizuje przypadkowość (przydało by się tylko jeszcze więcej iteracji) Jak się okazuje o kilku rzeczach zapomniałem, kilku nie przewidzialem. Zobaczymy Z kilku tricków jestem zadowolony:
- działa dla ciągu dowolnej długości (trick z sumą modulo dla 2 poprzednich wyrazów - tu pomysł ayeo podsunął) - do generowania prostokątów użyłem jednej pętli - generuję wszystkie 3 na raz Mam nadzieję, że procedura testowa będzie w miarę miarodajna. Natomiast jeśli będzie taka jak w regulaminie to może wygrać każdy kogo kod przejdzie 1 etap Powodzenia! Nie wiem czy zauważyłeś, ale zapomniałeś o wielkości znaków (i3ohui5y0uXU7VqS9u63C nie idzie) W każdym razie świetny kod, według moich kiepskich testów (bo na windowsie to bijesz na ryj moje rozwiązanie -------------------- scriptun.com. Startup z poradnikami do gier ttp.zone i ttpzone.pl
|
|
|
4.11.2010, 08:35:51
Post
#26
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) |
dr_bonzo, wydaje mi się, że masz pewien problem z odbieraniem parametrów, dla przykładu: TN156JBHY (k5aw6a2z7). Zalozylem, moze i blednie, ze litery od parametrow wystapia tylko raz :/ ---- Moj benchmark (oczywiscie srodowisko dalekie od laboratoryjnego - ale generalnie nic na kompie sie nei dzialo i nie dotykalem myszki ) Czasy wygladaja na identyczne, zmieniaja sie z kazdym uruchomieniem. Kod $ php benchmark.php 100
Running 100 times, with code I3OHUI5Y0UXU7VQS9U63C 4.506s - dr_bonzo.php // dr_bonzo 4.583s - Pawel_W.php // Pawel_W 4.499s - zegarek84.php // zegarek84 4.604s - ayeo.php // ayeo 4.510s - my-salsa.php // my salsa 4.511s - rolka.php // rolka 4.484s - cichy.php // cichy 4.505s - phpion.php // phpion 4.601s - flashdev.php // flashdev Ten post edytował dr_bonzo 4.11.2010, 12:09:28 -------------------- Nie lubię jednorożców.
|
|
|
4.11.2010, 09:28:52
Post
#27
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 10.12.2007 Ostrzeżenie: (0%) |
|
|
|
4.11.2010, 09:41:33
Post
#28
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) |
Wolne uwagi
- NIEWAZNE: co jak wypełniaczami są polskie krzaki i jak zachowa się strlen() ( alfabet to litery alfabety lacinskiego oraz cyfry ) - co jak parametry zdefiniowane sa kilka razy "K10.....K7" - wlasciwie to nie powinny - bo nie sprecyzowano ktory parametr wtedy wybrac - co jak K W A Z moga byc tez wypelniaczami? Moje próby rozwiązań - wygenerować wszystkie rozwiązania, zapisać w tablicach/stringu w zmiennej i odczytywać zamiast wyliczać (!wolne) - to samo ale zapisac na koncu pliku z kodem + __halt_compiler() + odczyt odpowiedzi znajdujacych sie zaraz za kodem; mniej parsowania dla php (!nie mozna odczytywac z plikow) - uzyc pamieci wspoldzielonej - przy pierwszym odpaleniu wrzucic odpowiedzi do ramu a przy kolejnych je odczytywac, ale ze wzgledu ze potrzebowalem min 8MB pamieci, a jej ilosc zalezy od konfiguracji systemu i nie zostala podana, to porzucilem to rozwiazanie. Dla testu poprawnosci to rozwiazanie nie musi byc szybkie (!niepewne rozwiazanie). Ten post edytował dr_bonzo 4.11.2010, 09:42:58 -------------------- Nie lubię jednorożców.
|
|
|
4.11.2010, 09:46:54
Post
#29
|
|
Grupa: Moderatorzy Postów: 6 070 Pomógł: 860 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza |
- co jak parametry zdefiniowane sa kilka razy "K10.....K7" - wlasciwie to nie powinny - bo nie sprecyzowano ktory parametr wtedy wybrac Wypełniaczami mogą być tylko litery, więc taka sytuacja nie zajdzie. Cytat Kody parametrów zostają umieszczone w większym ciągu, gdzie miejsca wokół kodów parametrów zostaną wypełnione losowymi literami.
Ten post edytował phpion 4.11.2010, 09:49:27 |
|
|
4.11.2010, 09:47:46
Post
#30
|
|
Grupa: Przyjaciele php.pl Postów: 1 202 Pomógł: 117 Dołączył: 13.04.2007 Skąd: 127.0.0.1 Ostrzeżenie: (0%) |
Coś z tymi testami jest nie tak jeśli mój kombajn jest porównywalny ze skryptem @zegarek84, @dr_bonzo czy @rolka
-------------------- |
|
|
4.11.2010, 09:48:45
Post
#31
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 72 Dołączył: 15.11.2006 Ostrzeżenie: (0%) |
@phpion, też zrobiłem osobny sposób dla przypadku gdy a == z
Moimi trikami było: - generowanie wszystkiego w jednej pętli + pętla zagnieżdżona (generalnie iteracji wychodzi tyle samo co u ciebie ) - spiralę jako jedyny prostokąt wypełniam w tablicy (tu się martwię czy podoła z rozwiązaniami innych) - wiersze robię przez odwrócenie ciągu sekwencji, pocięcie go na kawałki o długości równej ilości kolumn i zlepienie w stringa oddzielonego "\n" - wężyk robię przez dokładanie znaku z całej sekwencji, index wklejanego znaku obliczam na podstawie aktualnej wartości w i k w kolejnych iteracjach oto mój kod: http://wklej.org/hash/298032511ac/ ps. phpion, oddałeś rozwiązanie z tym czymś na początku? :
edit: @ayeo ja próbowałem u siebie zrobić testy kilku rozwiązań i przy wywoływaniu skryptów w ten sposób (.bat pod win): nie wiem czy to jest dobrze, nie znam się na batowych skryptach (ściągnąłem gotowca z jakiejś strony) też wszystkie rozwiązania miały te same czasy, chyba to nie jest miarodajne. Ten post edytował krowal 4.11.2010, 09:52:31 -------------------- Nawet świnka może wejść na drzewo kiedy jest chwalona :)
|
|
|
4.11.2010, 09:51:06
Post
#32
|
|
Grupa: Moderatorzy Postów: 6 070 Pomógł: 860 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza |
ps. phpion, oddałeś rozwiązanie z tym czymś na początku? :
Na początku mam phpDoca, ale wywaliłem go wrzucając kod w sieć. Ale generalnie tak: jedna z pierwszych moich linijek to właśnie $j = 7, a co? |
|
|
4.11.2010, 09:54:37
Post
#33
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 72 Dołączył: 15.11.2006 Ostrzeżenie: (0%) |
Sądząc po tym jak później tego używasz to nie powinno być:
? edit. sorry nie zauważyłem, że później zmieniasz to $j Ten post edytował krowal 4.11.2010, 09:58:00 -------------------- Nawet świnka może wejść na drzewo kiedy jest chwalona :)
|
|
|
4.11.2010, 09:58:10
Post
#34
|
|
Grupa: Moderatorzy Postów: 6 070 Pomógł: 860 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza |
Można też tak, jak najbardziej, ale while() jest szybszy od strlen() tak przynajmniej wyszło z moich testów. Do tego nie ma co jechać od 0, bo minimalna długość ciągu to 8:
|
|
|
4.11.2010, 10:00:57
Post
#35
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 72 Dołączył: 15.11.2006 Ostrzeżenie: (0%) |
Ech teraz kolejne dwa tygodnie czekania
-------------------- Nawet świnka może wejść na drzewo kiedy jest chwalona :)
|
|
|
4.11.2010, 10:04:11
Post
#36
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) |
Jeszcze raz wklejam
Krotszy kod: I3OHUI5Y0UXU7VQS9U63C Dluzszy kod: HB0EHYIJ4QXQQJCYDEUB8MXMMB0EHYIJ4QXQQJCYDEUB8MXMMB0EHYIJ4QXQQJCYDEUB8MXMMB0EHYIJ 4QXQQWFYDEUB8MXMMB0EHYIJ4QXQQJCYDEUB8MXMMB0EHYIJ4QXQQJCYDEUYDPXMMB0EHYIJ4QXQQJCY D EUB8MXMMB0EHYIJ4QXQQJCYDEUB8MXMMB0EHYIJ60WVTJCYDEUB8MXMMB0EHYIJ4QXQQJCYDEUB8MXMM B 0EHYIJ4QXQQJCYDEUB8MXMMB0EHYIJ4QXQQ Kod Validating for code I3OHUI5Y0UXU7VQS9U63C dr_bonzo ---8<-------------------------------------------------- 123456 234567 132171 765432 455667 364751 273142 112233 321765 432176 543217 654321 --------------------------------------------------8<--- Pawel_W ---8<-------------------------------------------------- 123456 234567 132171 765432 455667 364751 273142 112233 321765 432176 543217 654321--------------------------------------------------8<--- zegarek84 ---8<-------------------------------------------------- 123456 234567 132171 765432 455667 364751 273142 112233 321765 432176 543217 654321 --------------------------------------------------8<--- ayeo ---8<-------------------------------------------------- 123456 234567 132171 765432 455667 364751 273142 112233 321765 432176 543217 654321 --------------------------------------------------8<--- my salsa ---8<-------------------------------------------------- 123456 234567 132171 765432 455667 364751 273142 112233 321765 432176 543217 654321 --------------------------------------------------8<--- rolka ---8<-------------------------------------------------- 123456 234567 132171 765432 455667 364751 273142 112233 321765 432176 543217 654321 --------------------------------------------------8<--- cichy ---8<-------------------------------------------------- 123456 234567 132171 765432 455667 364751 273142 112233 321765 432176 543217 654321 --------------------------------------------------8<--- phpion ---8<-------------------------------------------------- 123456 234567 132171 765432 455667 364751 273142 112233 321765 432176 543217 654321--------------------------------------------------8<--- krowal ---8<-------------------------------------------------- 123456 234567 132171 765432 455667 364751 273142 112233 321765 432176 543217 654321 --------------------------------------------------8<--- flashdev ---8<-------------------------------------------------- 123456 234567 132171 765432 455667 364751 273142 112233 321765 432176 543217 654321 --------------------------------------------------8<--- Kod Validating for code HB0EHYIJ4QXQQJCYDEUB8MXMMB0EHYIJ4QXQQJCYDEUB8MXMMB0EHYIJ4QXQQJCYDEUB8MXMMB0EHYIJ
4QXQQWFYDEUB8MXMMB0EHYIJ4QXQQJCYDEUB8MXMMB0EHYIJ4QXQQJCYDEUYDPXMMB0EHYIJ4QXQQJCY D EUB8MXMMB0EHYIJ4QXQQJCYDEUB8MXMMB0EHYIJ60WVTJCYDEUB8MXMMB0EHYIJ4QXQQJCYDEUB8MXMM B 0EHYIJ4QXQQJCYDEUB8MXMMB0EHYIJ4QXQQ dr_bonzo ---8<-------------------------------------------------- 01234567012345670123 34567012345670123454 27012345670123456765 16345670123456701076 05270123456701232107 74163456701234543210 63052701234567654321 52741634567010765432 41630527012321076543 30527416345432107654 27416305276543210765 16305274107654321076 05274163210765432107 74163054321076543210 63052765432107654321 52741076543210765432 41632107654321076543 30543210765432107654 27654321076543210765 10765432107654321076 34343434343434343434 25252525252525252525 16161616161616161616 07070707070707070707 70707070707070707070 61616161616161616161 52525252525252525252 43434343434343434343 34343434343434343434 25252525252525252525 16161616161616161616 07070707070707070707 70707070707070707070 61616161616161616161 52525252525252525252 43434343434343434343 34343434343434343434 25252525252525252525 16161616161616161616 07070707070707070707 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 --------------------------------------------------8<--- Pawel_W ---8<-------------------------------------------------- --------------------------------------------------8<--- zegarek84 ---8<-------------------------------------------------- Array Array Array --------------------------------------------------8<--- ayeo ---8<-------------------------------------------------- --------------------------------------------------8<--- my salsa ---8<-------------------------------------------------- --------------------------------------------------8<--- rolka ---8<-------------------------------------------------- 01234567012345670123 34567012345670123454 27012345670123456765 16345670123456701076 05270123456701232107 74163456701234543210 63052701234567654321 52741634567010765432 41630527012321076543 30527416345432107654 27416305276543210765 16305274107654321076 05274163210765432107 74163054321076543210 63052765432107654321 52741076543210765432 41632107654321076543 30543210765432107654 27654321076543210765 10765432107654321076 34343434343434343434 25252525252525252525 16161616161616161616 07070707070707070707 70707070707070707070 61616161616161616161 52525252525252525252 43434343434343434343 34343434343434343434 25252525252525252525 16161616161616161616 07070707070707070707 70707070707070707070 61616161616161616161 52525252525252525252 43434343434343434343 34343434343434343434 25252525252525252525 16161616161616161616 07070707070707070707 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 --------------------------------------------------8<--- cichy ---8<-------------------------------------------------- 01234567012345670123 34567012345670123454 27012345670123456765 16345670123456701076 05270123456701232107 74163456701234543210 63052701234567654321 52741634567010765432 41630527012321076543 30527416345432107654 27416305276543210765 16305274107654321076 05274163210765432107 74163054321076543210 63052765432107654321 52741076543210765432 41632107654321076543 30543210765432107654 27654321076543210765 10765432107654321076 34343434343434343434 25252525252525252525 16161616161616161616 07070707070707070707 70707070707070707070 61616161616161616161 52525252525252525252 43434343434343434343 34343434343434343434 25252525252525252525 16161616161616161616 07070707070707070707 70707070707070707070 61616161616161616161 52525252525252525252 43434343434343434343 34343434343434343434 25252525252525252525 16161616161616161616 07070707070707070707 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 76543210765432107654 32107654321076543210 --------------------------------------------------8<--- phpion ---8<-------------------------------------------------- --------------------------------------------------8<--- krowal ---8<-------------------------------------------------- --------------------------------------------------8<--- flashdev ---8<-------------------------------------------------- Warning: str_split(): The length of each segment must be greater than zero in /Users/drbonzo/php-konkurs-jesien-2010/flashdev.php on line 40 Warning: implode(): Invalid arguments passed in /Users/drbonzo/php-konkurs-jesien-2010/flashdev.php on line 79 Warning: chunk_split(): Chunk length should be greater than zero in /Users/drbonzo/php-konkurs-jesien-2010/flashdev.php on line 109 --------------------------------------------------8<--- Ten post edytował dr_bonzo 4.11.2010, 12:10:51 -------------------- Nie lubię jednorożców.
|
|
|
4.11.2010, 10:36:45
Post
#37
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 72 Dołączył: 15.11.2006 Ostrzeżenie: (0%) |
@dr_bonzo, dzięki za rozwianie wątpliwości
Pozostaje tylko mieć nadzieję, że kody nie będą aż tak długie i integer wytrzyma -------------------- Nawet świnka może wejść na drzewo kiedy jest chwalona :)
|
|
|
4.11.2010, 11:54:22
Post
#38
|
|
Grupa: Zarejestrowani Postów: 812 Pomógł: 117 Dołączył: 2.12.2008 Ostrzeżenie: (10%) |
Jednak czytanie ze zrozumieniem to przydatna umiejętność.
"kolumny i wiersze w zakresie 3 – 20" W ogóle nie zauważyłem tej linijki i optymalizowałem swoje prostokąty na rozmiary nawet 1000x1000 i większe. Miałem nadzieję, że będą takie duże w testach, żeby to miało sens. @dr_bonzo, jeżeli chce Ci się to możesz też dorzucić do tych testów mój kod -> http://wklej.org/id/412411/ -------------------- |
|
|
4.11.2010, 12:11:08
Post
#39
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) |
@flashdev - dodane (patrz na 2 gorne posty)
-------------------- Nie lubię jednorożców.
|
|
|
4.11.2010, 12:14:36
Post
#40
|
|
Grupa: Zarejestrowani Postów: 812 Pomógł: 117 Dołączył: 2.12.2008 Ostrzeżenie: (10%) |
@flashdev - dodane (patrz na 2 gorne posty) No to widzę, że zaszalałem... -------------------- |
|
|
Wersja Lo-Fi | Aktualny czas: 23.04.2024 - 18:37 |