zoukankan      html  css  js  c++  java
  • 历届试题 核桃的数量

    问题描述

    小张是软件项目经理,他带领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

    真是胡乱搞,然后就AC了

    AC代码

    #include<stdio.h>
    #include<algorithm>
    
    using namespace std;
    
    int gcd(int x, int y)
    {
        if(y == 0)
            return x;
        else
            return gcd(y, x % y);
    }
    
    int main()
    {
        int a, b, c;
        while(~scanf("%d%d%d", &a, &b, &c))
        {
            int m, n, t, sum, num1, num2;
            m = gcd(a, b);
            n = gcd(b, c);
            t = gcd(a, c);
            num1 = max(m, n);
            num2 = max(num1, t);
            sum = a*b*c;
            if(m == n)
                printf("%d
    ", sum/(m*num2));
            else if(m == t)
                printf("%d
    ", sum/(m*num2));
            else if(n == t)
                printf("%d
    ", sum/(n*num2));
            else
                printf("%d
    ", sum/num2);
        }
    
        return 0;
    }
    View Code
    永远渴望,大智若愚(stay hungry, stay foolish)
  • 相关阅读:
    课程总结1
    网站概要设计说明书
    数据库设计说明书
    团队项目之7天工作计划
    NABC
    敏捷开发综述
    二维数组最大子数组
    电梯调度
    输出整数数组中 最大的子数组的结果
    【自习任我行】第二阶段个人总结10
  • 原文地址:https://www.cnblogs.com/h-hkai/p/8511150.html
Copyright © 2011-2022 走看看