Fork me on GitHub

HDU ACM 1019 Least Common Multiple

Least Common Multiple

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 18363    Accepted Submission(s): 6840

Problem Description
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
 
Sample Output
105 10296
 
Source
 
Recommend
JGShining
 
复制代码
#include<stdio.h>
int main()
{
    int i, j, n, k, num, count = 1;
    int  ch, p1, r, q1, p, q;
    scanf("%d", &n);
    while(n--)
    {
        i = q = p = r = 0;
        count = 1;
        scanf("%d", &num);
        while(num--)
        { 
            scanf("%d", &ch);
            if(count++ == 1) {p = p1 = ch; continue;}
            else q = q1 = ch;
            if(q > p)
            {
                r = q; q = p;  p = r;
            }
            while(p%q != 0)
            {
                r = q;
                q = p%q;
                p = r;
                
            }
            p = p1 = p1/q*q1;
        }
        printf("%d\n", p);
    }
    return 0;
}
复制代码

解题报告:

这题是我提交最多的一题,纠结在于不懂32-bit integer到底是什么意思,从一开始就没用int定义变量,最小公倍数 = 数之间相乘/数之间的最大公约数,思路无错,测试数据完全正确,但提交上去就不是一回事了,我用了long long,但总是WA,过段时间没辙了,discuss中找到了相似的代码,将我的代码一点一点的插入他人的代码中,一直提交着,我要看看哪里出错了,求最大公约数没错——大小数替换没错,最后干脆把注释的内容都删掉了,提交还是错误,无奈之下将所有的数改为int型,AC了!我只知道数的范围开小了会WA,但没想到开大了也会WA!

 
posted @   Gifur  阅读(1440)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
TOP
点击右上角即可分享
微信分享提示