Maafkan saya atas kelapangannya. Kami bersenang-senang melakukannya di golf internal kami, tetapi diperlukan beberapa email untuk klarifikasi, jadi saya harap saya menangkap sebagian besar dari itu pertama kali.
MASALAH
Diberikan snapshot salju "disimulasikan" (sebagai string, stdin atau parameter untuk fungsi / metode Anda), laporkan 4 nilai: kedalaman minimum, kedalaman maksimum, kedalaman rata-rata, dan durasi.
Berikut adalah contoh yang diformat untuk menggambarkan input:
* * **
** * ***
** * *
*
--------
'*' Adalah butiran salju dan '-' adalah tanah. Bayangkan semua "kepingan salju" yang jatuh ke tanah. Ini adalah "potret" terakhir:
*
*
** * **
********
--------
Anda perlu melaporkan:
- Kedalaman minimum - hitung "tumpukan" terpendek (1, dalam contoh di atas)
- Kedalaman maksimum - hitung "tumpukan" tertinggi (4, dalam contoh di atas)
- Kedalaman rata-rata - jumlah rata-rata semua “tumpukan” (1.9, misalnya di atas - membulatkan ke sepersepuluh)
- Durasi - (setiap "jatuh" = 1 detik) - waktu dari foto pertama hingga foto terakhir (3 detik, contoh di atas)
Contoh lain untuk referensi:
*
* *
*
*
--------
Cuplikan terakhir:
* * ***
--------
MEMASUKKAN
"Snapshot" awal akan memiliki 8 "baris", 8 "kolom", dan dipisahkan oleh pipa (pipa memisahkan baris). Misalnya (tidak termasuk kutipan):
“ | | | | * | * *| * |* |--------”
KELUARAN
Nilai 4 pipa-dibatasi pada satu baris: 0 | 1 | .6 | 3 atau 0 | 5 | 1 | 1
Jawaban:
Perl, 128 karakter
sumber
Python, 153 karakter
sumber
Windows PowerShell, 180
189Input masuk sebagai
$s
.Sejarah:
sumber
Beberapa hasil bahasa lain dari golf internal kami:
C #, 188 karakter (mudah dibaca)
Ruby, 173 karakter
sumber
PHP, 139 byte
untuk setiap kolom, hitung no. kepingan salju dan tidak. ruang di bawah kepingan salju pertama, kemudian hitung
mengambil string sebagai argumen dari baris perintah
langkah-langkah pemecahan dan golf
tambahkan
round(...,1)
sekitararray_sum($n)/8
untuk pembulatan (+9)sumber
Mathematica , ~ 115
Dalam posting ini saya harus beralih ke bentuk string yang lolos
\n
karena menempel dan menyalin kehilangan spasi. Di Front End saya bisa memasukkannya seperti ini:sumber
JavaScript, 328 Bytes
Tidak terlalu pendek, tapi itulah yang saya punya.
De-golf:
sumber