Énoncé¶
Joseph Marchand est un petit brigand. Il a installé sur l'ordinateur de son amie Alice un keylogger (un logiciel espion qui capture les entrées du clavier) en dépit des réglementations en vigueur qui condamnent fermement ce genre de pratique.
Il essaie en effet de récupérer le mot de passe Prologin d'Alice ! Malheureusement pour lui, le keylogger a enregistré toutes les frappes sur le clavier, sans distinction de s'il s'agissait d'un mot de passe ou non.
Joseph se retrouve donc avec une suite de caractères composé de lettres minuscules, majuscules, de nombres et de caractères spéciaux.
Il sait juste que le mot de passe d'Alice répond aux exigences de sécurité suivantes:
- Contenir au moins une minuscule (
a-z
) - Contenir au moins une majuscule (
A-Z
) - Contenir au moins un nombre (
0-9
), - Contenir au moins un caractère spécial (
!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
), - La taille du mot de passe est de $k$ caractères.
Aidez Joseph à savoir combien de chaines de k caractères pourraient être le mot de passe d'Alice.
Entrée¶
L’entrée contiendra :
- Sur la première ligne, un entier : n, taille de la chaîne.
- Sur la ligne suivante, un entier : k, taille du mot de passe.
- Sur la ligne suivante, une liste de n caractères juxtaposés : chaine, la chaîne de caractères récupérée du keylogger.
Sortie¶
Afficher le nombre de mots de passes possibles parmi la chaîne
Contraintes¶
- $k \le n \le 1\,000\,000$
- $4 \le k \le 10\,000$