Tâche
Étant donné une liste d'entiers L et d'un autre entier s , l'objectif est de calculer les sommes par colonne de toutes les tranches de longueur s (potentiellement chevauchantes) de L , tout en se référant à leur position par rapport à L (voir ci-dessous).
Définitions
Les s -longueur (chevauchement) des tranches de la liste L sont toutes les sous- séquences contiguës (sans enveloppe) de L qui sont d' une longueur s .
Afin de déterminer les positions des tranches s par rapport à L , vous pouvez imaginer construire une "échelle", où chaque tranche s i a un décalage de i positions depuis le début.
Spécifications
- s est un nombre entier supérieur à 1 et strictement inférieure à la longueur de L .
- L contiendra toujours au moins 3 éléments.
- Vous pouvez concurrencer dans n'importe quel langage de programmation et pouvez prendre des entrées et fournir des sorties par n'importe quelle méthode standard , tout en prenant note que ces failles sont interdites par défaut. Il s'agit de code-golf , donc la soumission la plus courte (en octets) pour chaque langue l' emporte.
Exemples et cas de test
Voici un exemple travaillé:
[1, 2, 3, 4, 5, 6, 7, 8, 9], 3
[1, 2, 3]
[2, 3, 4]
[3, 4, 5]
[4, 5, 6]
[5, 6, 7]
[6, 7, 8]
[7, 8, 9]
-------------------------------- (+) | column-wise summation
[1, 4, 9, 12, 15, 18, 21, 16, 9]
Et quelques autres cas de test:
[1, 3, 12, 100, 23], 4 -> [1, 6, 24, 200, 23]
[3, -6, -9, 19, 2, 0], 2 -> [3, -12, -18, 38, 4, 0]
[5, 6, 7, 8, 2, -4, 7], 3 -> [5, 12, 21, 24, 6, -8, 7]
[1, 2, 3, 4, 5, 6, 7, 8, 9], 3 -> [1, 4, 9, 12, 15, 18, 21, 16, 9]
[1, 1, 1, 1, 1, 1, 1], 6 -> [1, 2, 2, 2, 2, 2, 1]
[1, 2, 3, 4, 5, 6, 7, 8, 9], 6 -> [1, 4, 9, 16, 20, 24, 21, 16, 9]
s
est plus grand queL/2
. Peut-être ajouter quelques cas de test supplémentaires lorsque c'est le cas[1, 1, 1, 1, 1, 1, 1], 6 ->
[1, 2, 2, 2, 2, 2, 1] `ou[1, 2, 3, 4, 5, 6, 7, 8, 9], 6 -> [1, 4, 9, 16, 20, 24, 21, 16, 9]
?