Pi fois e (ou Pie si vous aimez la notation ambiguë) à 100 décimales est:
8.5397342226735670654635508695465744950348885357651149618796011301792286111573308075725638697104739439...
( OIES A019609 ) ( argument pour une possible irrationalité )
Votre tâche consiste à écrire un programme qui accepte un entier positif N et génère Pi * e tronqué à N décimales. par exemple, si N = 2, alors la sortie devrait être 8.53
.
Ceci est un problème d'optimisation, donc la soumission qui peut donner la sortie correcte pour la valeur la plus élevée de N gagnera.
Pour garantir que toutes les soumissions sont jugées en utilisant la même puissance de calcul, votre code doit être exécuté sur ideone , dans n'importe quelle langue prise en charge. Selon la FAQ ideone , il y a une limite de 5 secondes pour les utilisateurs non connectés. Cette limite de 5 secondes est celle que vous devez utiliser, pas la limite de 15 secondes pour les utilisateurs connectés. (Voir la FAQ pour d'autres limites comme la mémoire, la taille du code, etc.)
Plus précisément, toute personne non connectée à ideone devrait pouvoir exécuter votre programme sur ideone pour toutes les valeurs de N de 1 à un certain Nmax maximum, et voir la sortie correcte presque tout le temps . sans aucune erreur Time limit exceeded
ou Memory limit exceeded
, etc. La soumission avec le plus grand Nmax gagne.
(Que le temps réel pris soit un peu plus de 5 secondes n'a pas d'importance tant que l'idéone ne donne pas d'erreurs. " Presque tout le temps " est défini comme plus de 95% du temps pour un N. particulier)
Détails
- Vous pouvez utiliser n'importe quelle méthode mathématique que vous aimez pour calculer Pi * e, mais vous ne pouvez pas coder en dur la sortie au-delà des douze premiers chiffres de Pi, e ou Pi * e .
- Votre programme devrait pouvoir fonctionner pour n'importe quel N, avec des ressources illimitées.
- Vous pouvez utiliser des constantes Pi ou e intégrées si votre langue les possède.
- Vous ne pouvez pas accéder à des sites Web ou à des ressources externes à votre code (si ideone le permet même).
- Au-delà du codage en dur et de l'accès aux ressources externes, tout ce que l'idéone permet est presque certainement bien.
- Vos entrées et sorties doivent (évidemment) fonctionner avec tout ce que l'ideone fournit pour les E / S (stdin / stdout seulement il semble). C'est bien si vous avez besoin de guillemets autour de l'entrée N ou la sortie est quelque chose comme
ans = ...
, etc. - Veuillez inclure un lien vers un extrait idéone de votre code avec votre Nmax en entrée.
- S'il se trouve qu'il y a égalité (uniquement si plusieurs soumissions atteignent la limite de 64 Ko de caractères de sortie), la réponse la plus élevée gagne.