Menu
Coddy logo textTech

A problem

Leçon 9 sur 20 du cours Énigmes mathématiques de Coddy.

Triangulaires, pentagonaux, et hexagonaux, (Project Euler, Problème #45)

Les nombres triangulaires, pentagonaux et hexagonaux sont générés par les formules suivantes :

Triangle  T(n)=n(n+1)/2   1, 3, 6, 10, 15, ...

Pentagonal  P(n)=n(3n−1)/2   1, 5, 12, 22, 35, ...

Hexagonal  H(n)=n(2n−1)   1, 6, 15, 28, 45, ...

Il peut être vérifié que T(1)=P(1)=H(1)=1 et que T(285) = P(165) = H(143) = 40755.

Trouvez le prochain nombre triangulaire qui est également pentagonal et hexagonal.

challenge icon

Défi

Difficile

Écrivez une fonction calc qui résout le problème et renvoie un vecteur des trois premières solutions au problème. Cela signifie [1, 40755, ...]

Essayez vous-même

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>
#include "solution.h"

int main() {
    int rs = 0;
    int* r = calc(&rs);
    for (int i = 0; i < rs; i++) {
        if (i > 0) printf(" ");
        printf("%d", r[i]);
    }
    printf("\n");
    return 0;
}

Toutes les leçons de Énigmes mathématiques

5Diophantine Equation

IntroductionA problem