Une date peut être représentée par un entier non signé comme tel: YYYYMMDD. Ce que vous devez faire, c'est écrire le programme ou la fonction la plus courte qui détermine la date la plus récente dont le nombre était divisible par un nombre donné n
(y compris la date du jour), puis renvoie cette date dans le format indiqué ci-dessus. S'il n'y a jamais eu de date (entre 00000101 et aujourd'hui inclus) divisible par l'entier donné, vous devez retourner -1.
Exemples
Current Date Input Output
30 July, 2014 4 20140728
30 July, 2014 7 20140729
28 July, 2014 4 20140728
28 July, 2014 7 20140722
28 July, 5 90000 -1
Contribution
Vous pouvez lire à partir de STDIN ou prendre un argument de fonction ou même vous attendre à ce que l'entrée soit stockée dans une variable. L'entrée sera un entier non signé.
Sortie
Écrivez dans STDOUT ou renvoyez (ou enregistrez dans une variable) l'entier représentant la date au format AAAAMMJJ.
Restrictions
Vous pouvez utiliser n'importe quelle bibliothèque standard proposée par votre langue. Des échappatoires standard s'appliquent.
Conditions gagnantes
Il s'agit d'un code-golf , donc le plus petit programme (en octets) gagne. En cas d'égalité, la réponse avec le plus de votes l'emporte.