• 题 历届试题 核桃的数量


    资源限制
    时间限制: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
     
     
    我们知道,两个数的最小公倍数等于它们的乘积除以它们的最大公因数,那三个数呢?
    假设有三个数a, b, c,我们可以先求出其中两个数的最小公倍数(temp = a*b / gcd(a, b)),那么三个数的最小公倍数就是temp和c的最小公倍数(temp*c / gcd(temp, c) ).
     
     1 #include <iostream>
     2 #include <cstdio>
     3 #include <cstdlib>
     4 #include <cmath>
     5 #include <algorithm>
     6 
     7 using namespace std;
     8 
     9 int gcd(int a, int b) {
    10     int t=a%b;
    11     while(t) {
    12         a=b;
    13         b=t;
    14         t=a%b;
    15     }
    16     return b;
    17 }
    18 
    19 int main() {
    20     int a, b, c;
    21     cin>>a>>b>>c;
    22     int temp=a*b/gcd(a, b);
    23     cout<<temp*c/gcd(temp, c)<<endl;
    24     return 0;
    25 } 
    26 /*
    27 15 6 12
    28 
    29 60
    30 */
     
     
     
  • 相关阅读:
    Bzoj 1036: [ZJOI2008]树的统计Count
    cogs 1176. [郑州101中学] 月考
    cogs 610. 数对的个数
    Codevs 1247 排排站
    洛谷P1962 斐波那契数列
    Codevs 1051 接龙游戏
    2012 Noip提高组 Day2
    2012 Noip提高组 Day1
    poj1061 青蛙的约会
    一些常用的模板
  • 原文地址:https://www.cnblogs.com/wwqzbl/p/13554524.html
Copyright © 2020-2023  润新知