Inspiré par cette entrée Numberphile
Contexte
Les nombres de distance de cube d'un entier n sont définis ici comme l'ensemble des entiers qui sont à une distance de x³ pour un x donné . Pour un exemple simple, avec n=100et x=2, les nombres de distance de cube sont {92,108}.
Cela peut être étendu à un ensemble plus grand en faisant simplement varier x . Avec x ∈ {1,2,3,4}et le même n=100, nous avons l'ensemble résultant {36,73,92,99,101,108,127,164}.
Définissons CD (n, x) comme l'ensemble de tous les entiers n ± z³avec z ∈ {1,2,3,...,x}.
Nous pouvons maintenant nous concentrer sur certaines des propriétés spéciales de ces nombres de distance de cube . Parmi les nombreuses propriétés spéciales que les nombres peuvent avoir, les deux propriétés qui nous intéressent ici sont la primauté et les diviseurs premiers .
Pour l'exemple CD ci-dessus (100,4) , notez qu'ils 73, 101, 127sont tous premiers. Si nous les supprimons de l'ensemble, nous nous retrouvons avec {36,92,99,108,164}. Tous les diviseurs premiers de ces nombres sont (dans l'ordre) {2,2,3,3,2,2,23,3,3,11,2,2,3,3,3,2,2,41}, ce qui signifie que nous avons 5 diviseurs premiers distincts {2,3,23,11,41}. On peut donc définir que CD (100,4) a la corvée 1 de 5.
Le défi ici est d'écrire une fonction ou un programme, dans le moins d'octets, qui génère la ravenity d'une entrée donnée.
Contribution
- Deux entiers positifs
netxdans n'importe quel format pratique.
Production
- Un entier unique décrivant la ravenity des deux nombres d'entrée, lorsqu'il est calculé avec CD (n, x) .
Règles
- L'entrée / sortie peut se faire via n'importe quelle méthode appropriée .
- Des restrictions standard contre les échappatoires s'appliquent.
- Pour faciliter le calcul, vous pouvez supposer que les données d'entrée seront telles que CD (n, x) n'aura que des nombres positifs dans l'ensemble (c'est-à-dire qu'aucun CD (n, x) n'aura jamais de nombres négatifs ou zéro).
- La fonction ou le programme doit être en mesure de gérer les numéros d'entrée de manière à ce qu'ils
n + x³correspondent au type de données entier natif de votre langue. Par exemple, pour un type entier signé 32 bits, tous les numéros d'entrée avecn + x³ < 2147483648sont possibles.
Exemples
n,x - output
2,1 - 0 (since CD(2,1)={1,3}, distinct prime divisors={}, ravenity=0)
5,1 - 2
100,4 - 5
720,6 - 11
Notes de bas de page
1 - Ainsi nommé car nous ne nous intéressons pas à la cardinalité de l'ensemble, mais à un type d'oiseau différent. Puisque nous avons affaire à des diviseurs "communs", j'ai choisi d'utiliser le corbeau commun .
100,4est l'exemple expliqué par l'OP dans la section Contexte. Votre erreur semble être que vous devriez considérer tout 1..x, donc [1,2,3,4]pour ce cas.
100,4donne 5? Les nombres de distance de cube de cet ensemble sont36,164, et les facteurs premiers de cet ensemble sont2,3,41(puisque les facteurs de cet ensemble sont{2, 3, 4, 6, 9, 12, 18, 36}et{2, 4, 41, 82, 164}, respectivement). Par conséquent, la sortie doit être de 3, pas de 5.