Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

6 Stron V  < 1 2 3 4 5 > »   
Reply to this topicStart new topic
> Rozmowy na temat prac konkursowych
ayeo
post 4.11.2010, 12:41:01
Post #41





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%)
-----


Ale strzeliłem babola! W najprostszym momencie biggrin.gif Pokonkursowane biggrin.gif


--------------------
Go to the top of the page
+Quote Post
l0ud
post 4.11.2010, 15:08:54
Post #42





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

Ostrzeżenie: (0%)
-----


Moje "cudo" tongue.gif

http://wklej.org/id/412490/


--------------------
XMPP: l0ud@chrome.pl
Go to the top of the page
+Quote Post
sever88
post 4.11.2010, 15:21:35
Post #43





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 2.11.2010

Ostrzeżenie: (0%)
-----


Mój kod:
http://pastebin.com/AbQs4AjL

Nie mam żadnych specjalnych tricków.
Kolejne cyfry wrzucam na wybrane pozycje w stringu. Kod rozkodowuję na bieżąco sprawdzając czy jest interesujący znak. Tworzenie prostokątów jest dosyć sprawne, ale wynik w głównej mierze będzie zależał od rozszyfrowywania.
Pierwsza połowa kodu odpowiada za szyfr mimo że na to nie wygląda, po prostu są wykorzystywane te same nazwy zmiennych w obu częściach programu smile.gif

@phpion - fajne sztuczki wymyśliłeś, Twój kod wygląda mi na faworyta smile.gif
Go to the top of the page
+Quote Post
damc
post 4.11.2010, 15:49:27
Post #44





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 2.11.2010

Ostrzeżenie: (0%)
-----


Ktoś jest zainteresowany tym, jak zrobić pierwszy prostokąt bez wpisywania do tablicy?
Go to the top of the page
+Quote Post
rzymek01
post 4.11.2010, 18:04:59
Post #45





Grupa: Zarejestrowani
Postów: 592
Pomógł: 62
Dołączył: 3.08.2006

Ostrzeżenie: (0%)
-----


Wiem, że teraz trochę naciągam, ale proszę o dołączenie moich dwóch kodów do testow tongue.gif

1. szukanie parametrów za pomocą preg_match:
http://wklej.to/J6KB
2. własna funkcja do szukania:
http://wklej.to/xKl4

PS. po fakcie patrzę, że moglem troche lepiej zoptymalizowac tongue.gif
PS2. proponuje testować na ciągu długości tak przynajmniej 10000-100000


--------------------
:]
Go to the top of the page
+Quote Post
askone
post 4.11.2010, 18:19:53
Post #46





Grupa: Zarejestrowani
Postów: 654
Pomógł: 121
Dołączył: 27.10.2007
Skąd: Poznań, Łódź

Ostrzeżenie: (0%)
-----


Obiecany kod: http://wklej.org/id/412654/

Fajnie jeśli udało by się go sprawdzić w testach porównawczych;)


--------------------
Kliknij jeśli moja odpowiedź Ci pomogła.
askone.pl
Go to the top of the page
+Quote Post
Demio
post 4.11.2010, 18:21:47
Post #47





Grupa: Zarejestrowani
Postów: 14
Pomógł: 1
Dołączył: 22.05.2008

Ostrzeżenie: (0%)
-----


http://wklej.org/id/412657/

Mój kod. Pozdrawiam.
Go to the top of the page
+Quote Post
Pawel_W
post 4.11.2010, 18:49:41
Post #48





Grupa: Zarejestrowani
Postów: 1 675
Pomógł: 286
Dołączył: 15.06.2009
Skąd: Wieliczka

Ostrzeżenie: (0%)
-----


widzę, że dużo osób tu stosuje pętlę for, a to jest przecież ogromne opóźnienie w stosunku do while smile.gif
Go to the top of the page
+Quote Post
dr_bonzo
post 4.11.2010, 18:53:36
Post #49





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


Jakis dowod?


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
kaliberx
post 4.11.2010, 18:54:42
Post #50





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 3.11.2010

Ostrzeżenie: (0%)
-----


Cytat(sever88 @ 4.11.2010, 15:21:35 ) *
Mój kod:
http://pastebin.com/AbQs4AjL

Nie mam żadnych specjalnych tricków.


Nie ma to jak skromność. Według moich pomiarów masz najszybszy program ze wszystkich tu wysłanych.
Go to the top of the page
+Quote Post
dr_bonzo
post 4.11.2010, 19:10:19
Post #51





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


IMO

Dużo programów odpadnie na teście dokładnościowym.

Potem będzie loteria.

A na koniec wygra najladniejszy kod.


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
Pawel_W
post 4.11.2010, 19:36:28
Post #52





Grupa: Zarejestrowani
Postów: 1 675
Pomógł: 286
Dołączył: 15.06.2009
Skąd: Wieliczka

Ostrzeżenie: (0%)
-----


Cytat(dr_bonzo @ 4.11.2010, 18:53:36 ) *
Jakis dowod?

to chyba akurat łatwo sprawdzić smile.gif gdzieś na forum nospor o tym napominał smile.gif
Go to the top of the page
+Quote Post
dr_bonzo
post 4.11.2010, 19:37:17
Post #53





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


To czekam na kod. I wskazanie ile zyskam zamieniajac for -> while w tych programach.

Ten post edytował dr_bonzo 4.11.2010, 19:37:45


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
qba10
post 4.11.2010, 20:13:44
Post #54





Grupa: Zarejestrowani
Postów: 264
Pomógł: 20
Dołączył: 19.08.2007
Skąd: Bryńsk k. Lidzbarka Welskiego (nie mylić z Warmińskim)

Ostrzeżenie: (0%)
-----


Cytat(sever88 @ 4.11.2010, 15:21:35 ) *
Mój kod:
http://pastebin.com/AbQs4AjL

Nie mam żadnych specjalnych tricków.
Kolejne cyfry wrzucam na wybrane pozycje w stringu. Kod rozkodowuję na bieżąco sprawdzając czy jest interesujący znak. Tworzenie prostokątów jest dosyć sprawne, ale wynik w głównej mierze będzie zależał od rozszyfrowywania.
Pierwsza połowa kodu odpowiada za szyfr mimo że na to nie wygląda, po prostu są wykorzystywane te same nazwy zmiennych w obu częściach programu smile.gif

@phpion - fajne sztuczki wymyśliłeś, Twój kod wygląda mi na faworyta smile.gif

Twój kod dla kodu UMUAAM4G9Z zwraca mi :

Kod
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000

00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000

00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000
00000000000000000000

A powinien
Kod
01234567890123456789
56789012345678901230
43456789012345678941
32345678901234567052
21256789012345678163
10149012345678989274
09038567890123090385
98927434567894101496
87816323456705212507
76705212567816323618
65694101498927434729
54583090321038545830
43472989876549656941
32361876543210767052
21250765432109878163
10149876543210989274
09032109876543210385
98987654321098765496
87654321098765432107
76543210987654321098

90909090909090909090
81818181818181818181
72727272727272727272
63636363636363636363
54545454545454545454
45454545454545454545
36363636363636363636
27272727272727272727
18181818181818181818
09090909090909090909
90909090909090909090
81818181818181818181
72727272727272727272
63636363636363636363
54545454545454545454
45454545454545454545
36363636363636363636
27272727272727272727
18181818181818181818
09090909090909090909

98765432109876543210
98765432109876543210
98765432109876543210
98765432109876543210
98765432109876543210
98765432109876543210
98765432109876543210
98765432109876543210
98765432109876543210
98765432109876543210
98765432109876543210
98765432109876543210
98765432109876543210
98765432109876543210
98765432109876543210
98765432109876543210
98765432109876543210
98765432109876543210
98765432109876543210
98765432109876543210


--------------------
Qbix Media Project - Prosty Multiplatformowy Odtwarzacz Muzyki
Go to the top of the page
+Quote Post
jasin
post 4.11.2010, 21:41:08
Post #55





Grupa: Zarejestrowani
Postów: 142
Pomógł: 32
Dołączył: 21.08.2008
Skąd: Toruń

Ostrzeżenie: (0%)
-----


Wszyscy wrzucają to i ja smile.gif
Wiem, że nie jest to super kod ale nie miałem czasu by go "dopieszczać" więc wyszło co wyszło.
http://pastebin.com/b95U9DK9


--------------------
Go to the top of the page
+Quote Post
flashdev
post 4.11.2010, 21:59:40
Post #56





Grupa: Zarejestrowani
Postów: 812
Pomógł: 117
Dołączył: 2.12.2008

Ostrzeżenie: (10%)
X----


Cytat(dr_bonzo @ 4.11.2010, 19:37:17 ) *
To czekam na kod. I wskazanie ile zyskam zamieniajac for -> while w tych programach.


Kod
dane z 10 pomiarow
av:    1.389[s]    sd:    0.019[s]    _pusta petla for.php
av:    0.724[s]    sd:    0.017[s]    _pusta petla while.php

dane z 50 pomiarow
av:    1.443[s]    sd:    0.068[s]    _pusta petla for.php
av:    0.772[s]    sd:    0.058[s]    _pusta petla while.php


I jeszcze, żeby było widać co mierzyłem.

  1. <?php
  2. for( $i = 0; $i < $n; ++$i ){
  3. }


  1. <?php
  2. $i = $n;
  3. while( $i-- ){
  4. }


W obu przypadkach $n = 1e7;

jeszcze dane dla 200 pomiarów:
Kod
av:    1.428 [s]    sd:    0.051 [s]    _pusta petla for.php
av:    0.727 [s]    sd:    0.030 [s]    _pusta petla while.php


Już praktycznie nie widać, zeby coś się poprawiło. While zdecydowanie wygrywa z for`em i to prawie dwukrotnie.


--------------------
Go to the top of the page
+Quote Post
Pawel_W
post 4.11.2010, 23:35:31
Post #57





Grupa: Zarejestrowani
Postów: 1 675
Pomógł: 286
Dołączył: 15.06.2009
Skąd: Wieliczka

Ostrzeżenie: (0%)
-----


Cytat(flashdev @ 4.11.2010, 21:59:40 ) *
Już praktycznie nie widać, zeby coś się poprawiło. While zdecydowanie wygrywa z for`em i to prawie dwukrotnie.

no więc właśnie smile.gif

dzięki za wykonanie pomiarów, jestem aktualnie na laptopie i nie mam tutaj zainstalowanego serwera smile.gif
Go to the top of the page
+Quote Post
rzymek01
post 4.11.2010, 23:46:43
Post #58





Grupa: Zarejestrowani
Postów: 592
Pomógł: 62
Dołączył: 3.08.2006

Ostrzeżenie: (0%)
-----


ciekawe skąd bierze się taka różnica...

o ile pamiętam w C/C++ nie ma takich róznic w działaniu tych pętli


--------------------
:]
Go to the top of the page
+Quote Post
Pawel_W
post 4.11.2010, 23:53:12
Post #59





Grupa: Zarejestrowani
Postów: 1 675
Pomógł: 286
Dołączył: 15.06.2009
Skąd: Wieliczka

Ostrzeżenie: (0%)
-----


Cytat(rzymek01 @ 4.11.2010, 23:46:43 ) *
ciekawe skąd bierze się taka różnica...

o ile pamiętam w C/C++ nie ma takich róznic w działaniu tych pętli

są, ale tylko przy kompilacji, kod wynikowy jest sprowadzany do takiej samej postaci smile.gif
Go to the top of the page
+Quote Post
flashdev
post 4.11.2010, 23:55:05
Post #60





Grupa: Zarejestrowani
Postów: 812
Pomógł: 117
Dołączył: 2.12.2008

Ostrzeżenie: (10%)
X----


Cytat(Pawel_W @ 4.11.2010, 23:53:12 ) *
są, ale tylko przy kompilacji, kod wynikowy jest sprowadzany do takiej samej postaci smile.gif


Dokładnie do 2 instrukcji
porównanie + ewentualny skok
inkrementacja/dekrementacja

W pętli for jeszcze jest ustawienie początkowej wartości na początku, ale w while też trzeba to zrobić, tylko poza pętlą.


--------------------
Go to the top of the page
+Quote Post

6 Stron V  < 1 2 3 4 5 > » 
Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 25.04.2024 - 11:51