问题描述:

已知一个正整数N,问从1~N中任选出三个数,他们的最小公倍数最大可以为多少。

输入格式:

输入一个正整数N。

输出格式:

输出一个整数,表示你找到的最小公倍数。

样例输入:

9

样例输出:

504

数据规模与约定:

1 <= N <= 106

在线学习视频教程推荐:java课程

思路:

首先声明几个概念:

两个非0相邻自然数的最小公倍数是它们的乘积;相邻两个奇数的最小公倍数是它们的乘积;相邻两个偶数(0除外)的最小公倍数是它们乘积的一半。

现在上升到三个数的最小公倍数,要按照N的奇偶性分两种情况:

一、当n为奇数:n、n-1、n-2的乘积

二、当n为偶数:n-1、n-2、n-3是一组极大解,如果答案要大于当前值,只能是大于这3个数的乘积,那么只能把其中一个数变成n,并且三个数也要两两互质。n、n-2、n-3偶偶奇明显不互质;n、n-1、n-3偶奇奇;n、n-1、n-2偶奇偶明显不互质。

那么答案只能是n-1、n-2、n-3或者是n、n-1、n-3。但是n、n-3虽然是一个奇数,一个偶数,但是它们不连续可能不互质例如5,6,3三个数。

n为奇数:n、n-1、n-2

n为偶数: n是3的倍数 n-1、n-2、n-3

n不是3的倍数 n、n-1、n-3

示例如下: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));

}

}

}

技巧:考虑N<3的情况,而且这道题注意用long。

推荐java相关文章教程:java开发入门

java公倍数_java中如何计算最小公倍数相关推荐

  1. java 最小公倍数_java中如何计算最小公倍数

    问题描述: 已知一个正整数N,问从1~N中任选出三个数,他们的最小公倍数最大可以为多少. 输入格式: 输入一个正整数N. 输出格式: 输出一个整数,表示你找到的最小公倍数. 样例输入: 9 样例输出: ...

  2. java 事务_Java中事务总结详解(精华)

    1.什么是JAVA事务? 通常的观念认为,事务仅与数据库相关. 事务必须服从ISO/IEC所制定的ACID原则.ACID是原子性(atomicity).一致性(consistency).隔离性 (is ...

  3. [转载] c++多态与java多态性_Java中的多态性

    参考链接: Java中的加法和串联 c++多态与java多态性 Polymorphism is one of the core concepts of OOPS paradigm. The meani ...

  4. java 且_JAVA中逻辑运算符“|”和“”与“||”和“”的用法

    1.使用规则: (1)& 可以用作逻辑与的运算符,表示逻辑与(and) a.当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false ...

  5. java 包装类_Java中的包装类

    Java中哪些需要包装类 它们将原始数据类型转换为对象.如果我们希望修改传递给方法的参数,则需要对象(因为基元类型是按值传递的). java.util包中的类只处理对象,因此在这种情况下包装类也有帮助 ...

  6. java 难度_java中难度大一点的面试题

    1.请大概描述一下Vector和ArrayList的区别,Hashtable和HashMap的区别.(5) (1)Vector和ArrayList的异同 实现原理,功能相同,可以互用 主要区别: Ve ...

  7. math java 计算_Java中的数学计算函数汇总

    Math类:  java.lang.Math类中包含基本的数字操作,如指数.对数.平方根和三角函数. java.math是一个包,提供用于执行任意精度整数(BigInteger)算法和任意精度小数(B ...

  8. java中的多态性_[转载] c++多态与java多态性_Java中的多态性

    参考链接: Java中的加法和串联 c++多态与java多态性 Polymorphism is one of the core concepts of OOPS paradigm. The meani ...

  9. c++多态与java多态性_Java中的多态性

    c++多态与java多态性 Polymorphism is one of the core concepts of OOPS paradigm. The meaning of polymorphism ...

  10. java引_JAVA中的引用

    JDK1.2之后,Java扩充了引用的概念,将引用分为强引用.软引用.弱引用和虚引用四种. 强引用 类似于"Object a = new Object()"这类的引用,只要垃圾强引 ...

最新文章

  1. 唯一索引和普通索引的选择
  2. 看例子,学 Python(二)
  3. bzoj2538: [Ctsc2000]公路巡逻
  4. 百度贴吧个人主页_百度手机App商店社交应用排行榜,微信连续三个月霸占榜首...
  5. 美国量子计算机能编程吗,世界首台可编程通用量子计算机美国问世
  6. some useful tricks
  7. Windows10+Ubuntu 18.04.2+ROS 安装笔记(SSD单硬盘)下
  8. 一个大龄程序员对大家的总结性忠告(源于VeryCD)
  9. HTTPS上线过程说明
  10. Vue中computed,methods,watch用法上的异同
  11. 红旗linux apt,红旗 Linux 系统 V11 社区预览版(0122)发布
  12. 酒店计算机管理系统维护合同,酒店计算机管理系统维护合同协议书范本.pdf
  13. 程序员如何财务自由【原创】
  14. 与时俱进的迅捷多功能转换器
  15. 物联网 DFrobot 掌控版 人工智能测温实验
  16. 使用Python调用mdx字典文件进行查词
  17. 说说wps jsa的ListBox控件的数组写入方法
  18. 群晖Transmission的RSS订阅功能
  19. BZOJ4810 [Ynoi2017]由乃的玉米田
  20. 解决电脑上用耳机时声音太小的问题

热门文章

  1. 双活数据中心解决方案
  2. Egret之Eui.Button换肤
  3. 数论概论 第三章 勾股数组与单位圆
  4. 华为任命徐直军为华为云董事长,余承东任CEO | 任正非:做事要充满霸气,做人一定要谦卑!...
  5. DC升压直流高压电源模块12V24v转100V150V200V250V300V350v1000伏线性变化电压控制输出
  6. qlv转mp4播放不了,解决方法
  7. 2021年中国牛肉市场供需现状、进出口贸易及价格走势分析[图]
  8. 网管、桌面运维、技术支持 有出路吗
  9. 读《混世小农民》有感
  10. Acwing-4728. 乘方