8619 公约公倍
Description
给定六个正整数a,b,c,d,e,f;问你是否存在整数既是a,b,c的最大公约的倍数,同时又是d,e,f的最小公倍数的约数。
输入格式
输入为多case输入,每个case只有一行,每行六个正整数。当输入6个0时结束。
输出格式
存在输出YES,否则输出:NO
输入样例
32 40 16 20 30 24 0 0 0 0 0 0
输出样例
YES
提示
32,40,16的最大公约数是:8;而20,30,24的最小公倍数为120,显然存在整数(如24),既是8的倍数,又是120的约数

#include<cstdio> int gcd(int a,int b) { return b==0?a:gcd(b,a%b); } int main() { int a, b, c, d, e, f, i, j,k, k1, k2; int t=0; while (1) { k1 = k2 = 0; scanf("%d%d%d%d%d%d", &a, &b, &c, &d, &e, &f); if (!a&&!b&&!c&&!d&&!e&&!f) break; b=gcd(a,b); k1=gcd(b,c); if(d>=e&&d>=f) k=d; if(e>=d&&e>=f) k=e; else k=f; j=1; while(1) { t=j*k; if(t%d==0&&t%e==0&&t%f==0) break; else j++; } /*此处在求三个数的最小公倍数时,先找到三个数中最大的数k, 随着t=j*k,当t%d==0&&t%e==0&&t%f==0时,t就是满足条件的LCM*/ for (i = k1, j = 1; i <= t / 2; j++, i = j * k1) if (t % i == 0) break; if (i > t / 2) printf("NO\n"); else printf("YES\n"); } return 0; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧