| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3674 人关注过本帖
标题:杭电acm1019题
取消只看楼主 加入收藏
lowrie
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:81
专家分:138
注 册:2015-3-12
结帖率:87.5%
收藏
已结贴  问题点数:20 回复次数:3 
杭电acm1019题
The least common multiple (LCM) of a set of positive integers is the smallest positive integer which is divisible by all the numbers in the set. For example, the LCM of 5, 7 and 15 is 105.


Input
Input will consist of multiple problem instances. The first line of the input will contain a single integer indicating the number of problem instances. Each instance will consist of a single line of the form m n1 n2 n3 ... nm where m is the number of integers in the set and n1 ... nm are the integers. All integers will be positive and lie within the range of a 32-bit integer.


Output
For each problem instance, output a single line containing the corresponding LCM. All results will lie in the range of a 32-bit integer.

 
Sample Input
2
3 5 7 15
6 4 10296 936 1287 792 1

#include <iostream>
using namespace std;

int zu(int a, int b) {
    int r = 1;
    while (r != 0) {
        r = a%b;
        a = b;
        b = r;
    }
    return a;
}
int main() {
    int n;
    cin >> n;
    int k;
    int a, b;
    while (n--) {
        cin >> k;
        cin >> a ;   
        for (int i = 1; i < k;i++) {
            cin >> b;
            a =(a/zu(a, b))*b;
        }
        cout << a << endl;
    }
    system("pause");
    return 0;
}



#include <iostream>
using namespace std;

int zu(int a, int b) {
    int r = 1;
    while (r != 0) {
        r = a%b;
        a = b;
        b = r;
    }
    return a;
}
int main() {
    int n;
    cin >> n;
    int k;
    int a, b;
    while (n--) {
        cin >> k;
        cin >> a>>b ;   
        a== (a / zu(a, b))*b;
        for (int i = 2; i < k;i++) {
            cin >> b;
            a =(a/zu(a, b))*b;
        }
        cout << a << endl;
    }
    system("pause");
    return 0;
}

为什么第一个能ac,第二个不能ac
搜索更多相关主题的帖子: positive multiple contain example numbers 
2016-05-20 10:51
lowrie
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:81
专家分:138
注 册:2015-3-12
收藏
得分:0 
这两段代码只有一个地方不一样  
zu(a, b)求出a,b的最大公约数,这个应该没有问题
我知道问题在哪儿了,我把问题理解错了,输入的数可能只有一个,
第二个方法假设开始一定有两个或更多的数求公倍数,但可能只有一个数求公倍数,所以题意理解错误
2016-05-20 14:35
lowrie
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:81
专家分:138
注 册:2015-3-12
收藏
得分:0 
回复 3楼 rjsp
这个不是最后提交的代码,提交时肯定删了的
2016-05-20 14:36
lowrie
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:81
专家分:138
注 册:2015-3-12
收藏
得分:0 
回复 7楼 rjsp
哦,下次注意了。
2016-05-20 15:31
快速回复:杭电acm1019题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.076589 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved