P3951 [NOIP2017 提高组] 小凯的疑惑 / [蓝桥杯 2013 省] 买不到的数目
题解
题意:找出最大的 X 使得 na+mb=X 其中n,m中至少有一个为负数。
由于a,b互质所以n,m一定有解,即X可取任意整数。
因为n,m至少一个为负数,贪心的想最大的X一定在n=-1或者m=-1的情况。
分类讨论,n=-1时,原式子等价于-a+mb=X,此时m最大取a-1(理由见下一行),则X= ab-a-b;m=-1同理。
理由:当m=a时,原式=-a+ab=(b-1)*a+0*b,此时n,m都为非负整数;m>a的情况同理。
code
#include<bits/stdc++.h> using namespace std; typedef long long ll; int main(){ ll a,b; cin>>a>>b; cout<<a*b-a-b<<endl; return 0; }
分类:
刷题
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架