题解 | #小乐乐与欧几里得#

小乐乐与欧几里得

http://www.nowcoder.com/practice/da13e0cf321e4df9acd0fdf0a433cbb0

#include<stdio.h>
int main(){
    long long m,n;
    scanf("%d %d",&m,&n);
    long long p = m*n;
    while(n!=0){
        long long t=m%n;
        m =n;
        n = t;
    }
    long long max = m;
    long long min = p/m;
    printf("%lld",max+min);
}
全部评论
把n或者m的类型改成long long就可以了,两个都是int,乘积结果默认也是int,但int放不下结果,会溢出
1 回复 分享
发布于 2023-03-03 21:26 山西
为什么是得定义long long呢 定义为普通的int为什么会溢出呢?
点赞 回复 分享
发布于 2022-06-29 10:34

相关推荐

斑驳不同:还为啥暴躁 假的不骂你骂谁啊
点赞 评论 收藏
分享
11-03 14:38
重庆大学 Java
AAA求offer教程:我手都抬起来了又揣裤兜了
点赞 评论 收藏
分享
评论
14
4
分享
牛客网
牛客企业服务