输入包括一行,一行中有五个各不相同的正整数a, b, c, d, e(1 ≤ a, b, c, d, e ≤ 100), 以空格分割
输出一个整数,表示它们的最小众倍数
1 2 3 4 5
4
#include <iostream> using namespace std; int main() { int i,a[5]; for(i=0;i<5;i++) { cin>>a[i]; //假设按从小到大的顺序输入 } int k,j,flag,result; for(k=a[2];;k++) //被除数从a[2]开始递增 { flag=0; for(j=0;j<5;j++) { if(k%a[j]==0) flag++; } if(flag>=3) { result=k; break; //至少3个数被整除,跳出循环; } } cout<<result<<endl; return 0; }
from functools import reduce def calculate(li): for i in range(li[0], reduce(lambda x, y: x * y, li)): if len(list(x for x in map(lambda x: i % x == 0, li) if x)) >= 3: print(i) return if __name__ == "__main__": li = list(map(int, input().split())) calculate(li)