标题:核桃的数量
小张是软件项目经理,他带领3个开发组。工期紧,今天都在加班呢。为鼓舞士气,小张打算给每个组发一袋核桃(据传言能补脑)。他的要求是:
1. 各组的核桃数量必须相同
2. 各组内必须能平分核桃(当然是不能打碎的)
3. 尽量提供满足1,2条件的最小数量(节约闹革命嘛)
程序从标准输入读入:
a b c
a,b,c都是正整数,表示每个组正在加班的人数,用空格分开(a,b,c<30)
程序输出:
一个正整数,表示每袋核桃的数量。
例如:
用户输入:
2 4 5
程序输出:
20
再例如:
用户输入:
3 1 1
程序输出:
3
资源约定:
峰值内存消耗(含虚拟机) < 64M
CPU消耗 < 1000ms
请严格按要求输出,不要画蛇添足地打印类似:“请您输入...” 的多余内容。
所有代码放在同一个源文件中,调试通过后,拷贝提交该源码。
注意: main函数需要返回0
注意: 只使用ANSI C/ANSI C++ 标准,不要调用依赖于编译环境或操作系统的特殊函数。
注意: 所有依赖的函数必须明确地在源文件中 #include , 不能通过工程设置而省略常用头文件。
提交时,注意选择所期望的编译器类型。
思路:单循环历遍试试这个数目能不能满足条件,能平分就是核桃数对人数取余等于0,第一个满足条件的就是最小的核桃数,输出并且结束程序。
过程:单循环历遍-->平分就是取余为0-->历遍从小到大,第一个满足条件的就输出数目-->输出-->结束。
#include
int main()
{
int a,b,c,i;
scanf("%d%d%d",&a,&b,&c); //输入
for(i=1;i<3000000;i++) //尝试这个数量的核桃是否满足条件 满足第一个要求
{//因为i是从小到大,所以第一个满足条件的,就是最小的数目。
if(i%a==0) //满足能平分的要求。
{
if(i%b==0)
{
if(i%c==0)
{
printf("%d\n",i); //输出。
break;
}
}
}
}
return 0;
}