試題 歷屆試題 核桃的數量(最大公約數and最小公倍數)

資源限制

時間限制:1.0s 內存限制:256.0MB
問題描述
小張是軟件項目經理,他帶領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<vector>
#include<string>
#include<sstream> 
#include<algorithm>
#include<cstring>
#include<iostream>

using namespace std;
int gcd(int x, int y) //輾轉相除,最小公約數 
{
	int a,b,flag = 1;
	if(x>y)
	{
		a = x;
		b = y;
	}
	else
	{
		a = y;
		b = x;
	}
	while(flag)
	{
		flag = a%b;
		a = b;
		b = flag;
	}
	return a;
}

int lcm(int x, int y) //最大公約數 
{
	return x/gcd(x,y)*y;
}
 
 int main(int argc,char *argv[])
 {
    int a, b, c, tem;
	cin>>a>>b>>c;
	cout<<lcm(lcm(a,b),c);
	return 0;
 }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章