Maison >Java >JavaBase >Comment calculer le plus petit commun multiple en Java

Comment calculer le plus petit commun multiple en Java

王林
王林avant
2019-11-27 14:39:495976parcourir

Comment calculer le plus petit commun multiple en Java

Description du problème :

Étant donné un entier positif N, demandez à trois nombres sélectionnés au hasard entre 1 et N, quel est leur multiple le plus commun maximum.

Format de saisie :

Entrez un entier positif N.

Format de sortie :

Sortez un entier représentant le plus petit commun multiple que vous avez trouvé.

Exemple d'entrée :

9

Exemple de sortie :

504

Échelle et convention des données :

1 <= N <= 106

Tutoriel vidéo d'apprentissage en ligne recommandé : Cours Java

Idée :

Tout d'abord, déclarez quelques concepts :

Le plus petit commun multiple de deux nombres naturels adjacents non nuls est leur produit ; le plus petit commun multiple de deux nombres impairs adjacents est leur produit ; le plus petit commun multiple de deux nombres pairs adjacents (sauf 0) est ; leur moitié de produit.

Maintenant au plus petit commun multiple de trois nombres, il y a deux situations selon la parité de N :

1. Lorsque n est un nombre impair : n, n-1, n- 2 Produit

2. Lorsque n est un nombre pair : n-1, n-2, n-3 sont un ensemble de solutions maximales. Si la réponse est supérieure à la valeur actuelle, il ne peut s'agir que de la valeur actuelle. produit supérieur à ces trois nombres. Ensuite, vous ne pouvez changer qu'un seul des nombres en n, et les trois nombres doivent également être relativement premiers. n, n-2, n-3 pair et impair ne sont évidemment pas premiers entre eux ; n, n-1, n-3 sont pairs et impairs ; n, n-1, n-2 pair et impair ne sont évidemment pas premiers entre eux.

Alors la réponse ne peut être que n-1, n-2, n-3 ou n, n-1, n-3. Cependant, bien que n et n-3 soient un nombre impair et un nombre pair, ils ne sont pas continus et peuvent ne pas être relativement premiers, comme les trois nombres 5, 6 et 3.

n est un nombre impair : n, n-1, n-2

n est un nombre pair : n est un multiple de 3 n-1, n-2, n-3

n n'est pas un multiple de 3 n, n-1, n-3

Les exemples sont les suivants :

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        long N=input.nextLong();
        long temp=0;
        if(N<=2){
            System.out.println(N);
        }
        else if(N%2==0){
            temp=(N-1)*(N-2)*(N-3);
            if(N%3!=0){
                temp=Math.max(temp,N*(N-1)*(N-3));
            }
            System.out.println(temp);

        }

        else {
            System.out.println(N*(N-1)*(N-2));
        }
    }


}

Conseils : Considérons le cas de N<3, et veillez à utiliser long dans cette question.

Articles et tutoriels recommandés sur Java : Introduction au développement Java

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer