Mes excuses pour la verbosité. Nous nous sommes amusés avec cela au travail dans notre golf interne, mais cela a nécessité quelques e-mails pour des éclaircissements, donc j'espère avoir capturé la plupart de cela la première fois.
PROBLÈME
Étant donné un instantané «simulé» des chutes de neige (sous forme de chaîne, de stdin ou de paramètre pour votre fonction / méthode), indiquez 4 valeurs: profondeur minimale, profondeur maximale, profondeur moyenne et durée.
Voici un exemple formaté pour illustrer l'entrée:
* * **
** * ***
** * *
*
--------
Le «*» est un flocon de neige et le «-» est le sol. Imaginez tous ces «flocons de neige» tombant vers le sol. Voici le dernier «instantané»:
*
*
** * **
********
--------
Vous devez faire rapport sur:
- Profondeur minimale - comptez la «pile» la plus courte (1, dans l'exemple ci-dessus)
- Profondeur maximale - comptez le plus haut «tas» (4, dans l'exemple ci-dessus)
- Profondeur moyenne - nombre moyen de tous les «pieux» (1,9, dans l'exemple ci-dessus - arrondi aux dixièmes)
- Durée - (chaque «chute» = 1 seconde) - temps entre le premier instantané et le dernier instantané (3 secondes, dans l'exemple ci-dessus)
Un autre exemple de référence:
*
* *
*
*
--------
Instantané final:
* * ***
--------
CONTRIBUTION
Le «snapshot» de départ aura 8 «lignes», 8 «colonnes» et sera délimité par des tuyaux (les tuyaux séparent les lignes). Par exemple (hors guillemets):
“ | | | | * | * *| * |* |--------”
PRODUCTION
Les 4 valeurs délimitées par des tuyaux sur une seule ligne: 0 | 1 | .6 | 3 ou 0 | 5 | 1 | 1
Réponses:
Perl, 128 caractères
la source
Python, 153 caractères
la source
Windows PowerShell, 180
189L'entrée vient en tant que
$s
.Histoire:
la source
Quelques autres langues résultent de notre golf interne:
C #, 188 caractères (facilement lisible)
Ruby, 173 caractères
la source
PHP, 139 octets
pour chaque colonne, ne comptez pas. de flocons de neige et non. des espaces sous le premier flocon de neige, puis calculer
prend la chaîne comme argument à partir de la ligne de commande
étapes de ventilation et de golf
ajouter
round(...,1)
autourarray_sum($n)/8
pour arrondir (+9)la source
Mathematica , ~ 115
Dans ce post, j'ai dû recourir à la forme de chaîne échappée
\n
car le copier-coller perd des espaces. Dans le frontal, je peux le saisir comme ceci:la source
JavaScript, 328 octets
Pas particulièrement court, mais c'est ce que j'ai.
De-golfé:
la source