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

小乐乐与欧几里得

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

相关推荐

09-08 17:17
同济大学 Java
狗不理fe:里面的人劝一句,别来虾,我们部门24校招生淘汰率30%,还有一些人说有一年保护期,不可能!!!
我的秋招日记
点赞 评论 收藏
分享
09-01 11:31
门头沟学院 Java
buul:七牛云的吧,感觉想法是好的,但是大家没那么多时间弄他这个啊。。。不知道的还以为他是顶尖大厂呢还搞比赛抢hc,只能说应试者的痛苦考察方是无法理解的,他们只会想一出是一出
点赞 评论 收藏
分享
评论
15
5
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务