Przepraszam za gadatliwość. Bawiliśmy się dobrze podczas pracy w naszym wewnętrznym golfie, ale wymagało to kilku e-maili do wyjaśnienia, więc mam nadzieję, że złapałem większość tego pierwszego razu.
PROBLEM
Biorąc pod uwagę „symulowaną” migawkę śniegu (jako ciąg, wartość standardowa lub parametr funkcji / metody), zgłoś 4 wartości: minimalną głębokość, maksymalną głębokość, średnią głębokość i czas trwania.
Oto sformatowany przykład ilustrujący dane wejściowe:
* * **
** * ***
** * *
*
--------
„*” To płatek śniegu, a „-” to ziemia. Wyobraź sobie wszystkie te „płatki śniegu” spadające na ziemię. To jest ostatnia „migawka”:
*
*
** * **
********
--------
Musisz zgłosić:
- Minimalna głębokość - policz najkrótszy „stos” (1, w powyższym przykładzie)
- Maksymalna głębokość - policz najwyższy „stos” (4, w powyższym przykładzie)
- Średnia głębokość - średnia liczba wszystkich „stosów” (1,9, w powyższym przykładzie - zaokrąglenie do dziesiątych)
- Czas trwania - (każdy „upadek” = 1 sekunda) - czas od pierwszej migawki do ostatniej migawki (3 sekundy, w powyższym przykładzie)
Kolejny przykład w celach informacyjnych:
*
* *
*
*
--------
Ostateczna migawka:
* * ***
--------
WEJŚCIE
Początkowa „migawka” będzie miała 8 „wierszy”, 8 „kolumn” i będzie rozdzielana rurami (rury oddzielają rzędy). Na przykład (z wyłączeniem cytatów):
“ | | | | * | * *| * |* |--------”
WYNIK
4 wartości rozdzielane potokami w jednym wierszu: 0 | 1 | .6 | 3 lub 0 | 5 | 1 | 1
Odpowiedzi:
Perl, 128 znaków
źródło
Python, 153 znaki
źródło
Windows PowerShell, 180
189Dane wejściowe mają postać
$s
.Historia:
źródło
Kilka innych języków wynika z naszego wewnętrznego golfa:
C #, 188 znaków (łatwo czytelnych)
Ruby, 173 znaków
źródło
PHP, 139 bajtów
dla każdej kolumny policz nr. płatków śniegu i nie. spacji poniżej pierwszego płatka śniegu, a następnie obliczanie
przyjmuje ciąg znaków jako argument z wiersza poleceń
awarie i kroki w golfa
dodać
round(...,1)
okołoarray_sum($n)/8
zaokrąglania (+9)źródło
Mathematica , ~ 115
W tym poście musiałem użyć uciekającego ciągu znaków,
\n
ponieważ wklejanie i kopiowanie traci spacje. W interfejsie mogę wpisać to tak:źródło
JavaScript, 328 bajtów
Niezbyt krótki, ale to właśnie mam.
Gra w golfa:
źródło