python刷题-最大最小公倍数

问题描述

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

输入格式

输入一个正整数N。

输出格式

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

样例输入

9

样例输出

504

数据规模与约定

1 <= N <= 10**6。

1N = int(input()) 2Min = 1 3if N<=2: 4 print(N) 5elif N%2 != 0: 6 print(N*(N-1)*(N-2)) 7else: 8 if N%3 == 0: 9 print((N-1)*(N-2)*(N-3)) 10 else: 11 print(N*(N-1)*(N-3)) 12
1【解题思路】 21.要找到最大的最小公倍数,所以可以从N往下找 32.要找到最小公倍数,说明要从N’往下找到三个互质的数 43.任意大于1的两个相邻的自然数都是互质的;相邻的两个奇数是互质的 54.如果N<=2,可选择的范围只有12,最大的最小公倍数只能是2 65.接下来分类讨论N为奇数和偶数的情况: 7 8如果N为奇数,N和与N相邻的数和与N相邻的奇数,三个数互为质数,这时候得到最大的最小公倍数为N*(N-1)*(N-2)【如:543N5)】 9如果N为偶数,则需要讨论N是否为3的倍数: 10N3的倍数,且N为偶数,NN-2不互质,NN-3也不互质,此时最大的最小公倍数为**(N-1)(N-2)(N-3)**【如:11109N12)】 11N不为3的倍数,且N为偶数,则NN-2不互质,NN-3互质,此时最大的最小公倍数为N*(N-1)*(N-3)【如:875N8)】 12

转自蓝桥杯python 最大最小公倍数

点赞
收藏

评论区

加载中...

相关推荐

python刷题-序列求和

问题描述求123...n的值。输入格式输入包括一个整数n。输出格式输出一行,包括一个整数,表示123...n的值。样例输入4样例输出10样例输入100说明:有一些试题会给出多组样例输入输出以帮助你更好的做题。一般在提交之前所有这些样例都需要测试通过才行,但这不代表这几组样例数据都正确了你的程序就是完全正确的,潜在的错误可能仍然导致你的得分较低

python刷题-字母图形

问题描述利用字母可以组成一些美丽的图形,下面给出了一个例子:ABCDEFGBABCDEFCBABCDEDCBABCDEDCBABC这是一个5行7列的图形,请找出这个图形的规律,并输出一个n行m列的图形。输入格式输入一行,包含两个整数n和m,分别表示你要输出的图形的行数的列数。输出格式输出n行,每个m个字符,为你的图形。样例输入57样例输

C 语言代码大全

1两个数组的合并题目描述已知数组a中有m个按升序排列的元素,数组b中有n个按降序排列的元素,编程将a与b中的所有元素按降序存入数组c中。输入输入有两行,第一行首先是一个正整数m,然后是m个整数;第二行首先是一个正整数n,然后是n个整数,m,n均小于等于1000000。输出输出合并后的mn个整数,数据之间用空格隔开。输出占一行。样例输入4

python刷题-特殊回文数

问题描述  123321是一个非常特殊的数,它从左边读和从右边读是一样的。  输入一个正整数n,编程求所有这样的五位和六位十进制数,满足各位数字之和等于n。输入格式  输入一行,包含一个正整数n。输出格式  按从小到大的顺序输出满足条件的整数,每个整数占一行。样例输入52样例输出899998989989998899数据规模和约定 

python刷题-数列排序

资源限制时间限制:1.0s内存限制:512.0MB问题描述  给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1<n<200输入格式  第一行为一个整数n。  第二行包含n个整数,为待排序的数,每个整数的绝对值小于10000。输出格式  输出一行,按从小到大的顺序输出排序后的数列。样例输入583649样例输出34689···

python刷题-进制转换

十六进制转八进制问题描述  给定n个十六进制正整数,输出它们对应的八进制数。输入格式  输入的第一行为一个正整数n(1<n<10)。  接下来n行,每行一个由0~9、大写字母A~F组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。输出格式  输出n行,每行为输入对应的八进制正整数。  【注意】  输入的十六进制数不会有