经典简约
清爽简洁,回归本真
液态水晶
毛玻璃+霓虹光带
赛博朋克
霓虹故障艺术风
🚫
违规操作检测
禁止使用右键菜单
⚠️ 此操作已被系统记录
1

京城首少

📝 题解 🔵 仅限 C++
题目描述
话说,清朝年间。京城中有两个出手阔绰的公子哥,小福王爷和小侯王爷,分别是福王爷和侯王爷的独子。他们闲来无事就喜欢——赌。<br /> 这不,小侯王爷这天来到小福王爷府上饮酒。酒过三巡,又离不开赌啦。<br /> 小福王爷给小侯王爷出了个难题:<br /> <br /> 我这有2个宝箱,分别装有黄金若干两。我非常喜欢搜刮民脂,故可以每天往一个宝箱中装入另一个宝箱现在有的黄金数。<br /> 具体来说,假设昨日宝箱中分别装有黄金x两和y两,我今天可以往第一个宝箱装y两黄金,或者往第二个宝箱装x两黄金。也就是今天宝箱中的黄金数量可以是(x+y,y)或者(x,x+y)。<br /> 现在我有4个宝箱,宝箱中的黄金数分别是a,b,c和d。<br /> 你要给我找出一对数x和y,往2个空的宝箱中分别塞入x两黄金和y两黄金。你每天也像我一样这么玩,这宝箱中的黄金数量日后可以变为(a,b),也可以变为(c,d)。<br /> 你若是能找到x和y,我便给你x+y两黄金。你若是能找到多对x和y,我便给你x+y和最大的黄金数。<br /> 你若是找不到,这京城首少的名号可是我的了。<br /> <br /> 你能帮助小侯王爷完成这个难题吗?<br /> <br /> 以上问题的人话版:<br /> 对于数对(x,y),我们每次可以使之变为(x+y,y)或者(x,x+y)。现在给定4个数字a,b,c和d,请找出数对(x,y),使得(x,y)经过操作可以变为(a,b)或者(c,d)。变为(a,b)的操作次数可以与变为(c,d)的操作次数不同。<br /> 输出x+y的值。如果有多组(x,y)满足条件,输出x+y的最大值。<br />
输入格式
多组输入数据,每组输入数据包含4个整数a,b,c和d。(1&lt;=a,b,c,d&lt;=1000000)。
输出格式
对于每组输入数据,输出最大的x+y的值,如果找不到数对(x,y),输出-1。
样例
样例输入 1
1 2 2 1 15 4 10 7
样例输出 1
2 7
提交代码
请先登录后提交

🤖 AI 解题助手

DeepSeek
就绪
👋 你好!我是 AI 解题助手。
我已阅读了这道题,可以帮你分析思路、提供代码示例。
⚠️ 请先登录后使用