0
点赞
收藏
分享

微信扫一扫

蓝桥杯 核桃的数量 (三个数以上的最小公倍数)


问题描述



小张是软件项目经理,他带领3个开发组。工期紧,今天都在加班呢。为鼓舞士气,小张打算给每个组发一袋核桃(据传言能补脑)。他的要求是:

1. 各组的核桃数量必须相同

2. 各组内必须能平分核桃(当然是不能打碎的)

3. 尽量提供满足1,2条件的最小数量(节约闹革命嘛)



输入格式



输入包含三个正整数a, b, c,表示每个组正在加班的人数,用空格分开(a,b,c<30)



输出格式



输出一个正整数,表示每袋核桃的数量。



样例输入1



2 4 5



样例输出1



20



样例输入2



3 1 1



样例输出2



3

【代码】:

#include <iostream>
#include <algorithm>
#include<cstdio>
#include<cstring>
#include <bits/stdc++.h>
using namespace std;
int gcd(int a,int b)
{
return b==0?a:gcd(b,a%b);
}
int main()
{
int a[3];
while(cin>>a[0]>>a[1]>>a[2])
{
int sum=1,i=0;
while(i<3)
{
if(a[i]) sum=sum*a[i]/gcd(sum,a[i]);
i++;
}
printf("%d\n",sum);
}
return 0;
}




举报

相关推荐

0 条评论