HDU 2662 Coin
来源:互联网 发布:w10网络连接图标不见了 编辑:程序博客网 时间:2024/06/11 08:12
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2662
怎么说呢,这道题逻辑推理不错,可以找规律,也可以证明结论。我举了几个例子后,推出了公式....
题意:给你两种素数,每种素数的个数不限,问你哪个数字后所有的数字都可以通过这两种素数组合构成
比如:
3 5
那么7数字后的所有数字都可以由这两种素数组合成
5 7
一个一个的推的话,我们会发现是35
7 9
同样一个一个的推,虽然比较麻烦,不过没办法。我们会发现47以后的所有数字都可以组合构成
下面是我的AC代码:
#include<iostream>
#define ll long long
using namespace std;
int main()
{
ll t,n,m;
cin>>t;
while(t--)
{
ll ans;
cin>>n>>m;
ans=n*m-m-n;
cout<<ans<<endl;
}
return 0;
}
关于公式:我们在这里证明一下
设所求为n,那么n+a、n+b可以用a、b线性表出,而n不可。
所以 n+a=x1*a+y1*b,n+b=x2*a+y2*b
所以 n=(x1-1)*a+y1*b n=x2*a+(y2-1)*b
因为n不能被线性表出,所以x1=0,y2=0
所以 n+a=y1*b,n+b=x2*a
所以 n+a=y1*b,n+a=(x2+1)*a-b
所以 (x2+1)*a-b是b的倍数
因为a、b互质,所以(x2+1)是b的倍数
因为求最小的n,所以选最小的x2值,所以取(x2+1)为b
所以 n+a=b*a-b,n=a*b-a-b
证毕
- HDU 2662 Coin
- HDU 2662 Coin
- Coin HDU
- HDU 2069 Coin Change
- HDU 2068 Coin Change
- HDU 3951 Coin Game
- hdu 2069 Coin Change
- hdu 1029 False coin
- HDU 2069 Coin Change
- HDU:3951 Coin Game
- Hdu 3951 Coin Game
- HDU 2069 Coin Change
- hdu 2069 Coin Change
- HDU 2069 Coin Change
- hdu 2069 Coin Change
- hdu 2069 Coin Change
- hdu-2069-Coin Change
- HDU 2069 Coin Change
- pslq常用操作
- 苹果开发者账号注册申请流程
- C# native
- android压力测试软件monkey
- spring的InitializingBean的 afterPropertiesSet 方法 和 init-method配置的 区别联系
- HDU 2662 Coin
- Codeforces Round #259 (Div. 2) 题解
- 球钟问题之链式队列与链式栈的应用
- IOS开发之深拷贝与浅拷贝(mutableCopy与Copy)详解
- hdu 1016 Prime Ring Problem(深搜就可以)
- Android事件分发机制完全解析,带你从源码的角度彻底理解(下)
- 两个ListView 实现 淘点点 点菜界面效果
- ASP.NET大闲话:ashx文件有啥用
- SSH框架 の 学习笔记(一)