HDU 1573 X问题 (中国剩余定理非互质)
来源:互联网 发布:传感器网络的目标跟踪 编辑:程序博客网 时间:2024/05/16 18:11
#include <map>#include <stack>#include <queue>#include <deque>#include <cmath>#include <vector>#include <string>#include <cstdio>#include <cstdlib>#include <cstring>#include <iostream>#include <algorithm>using namespace std;#define L(i) i<<1#define R(i) i<<1|1#define INF 0x3f3f3f3f#define pi acos(-1.0)#define eps 1e-12#define maxn 100100#define MOD 1000000007#define ll long longll T,n,m,a[11],b[11],x,y,gcd;void E_gcd(ll ai,ll bi){ if(!bi) { x = 1; y = 0; gcd = ai; return; } E_gcd(bi,ai%bi); ll tmp = x; x = y; y = tmp - ai / bi * y;}int main(){ cin >> T; while(T--) { cin>>n>>m; for(int i = 1; i <= m; i++) cin >> a[i]; for(int i = 1; i <= m; i++) cin >> b[i]; int flag = 0; ll a1 = a[1],b1 = b[1]; for(int i = 2; i <= m; i++) { ll a2 = a[i],b2 = b[i]; E_gcd(a1,a2); if((b2-b1) % gcd) { flag = 1; break; } x *= ((b2 - b1) / gcd); ll t = a2 / gcd; x = (x % t + t) % t; b1 += a1 * x; a1 = (a1 * a2 / gcd); b1 = (b1 % a1 + a1) % a1; } if(flag || b1 > n) cout<<"0"<<endl; else cout<<(n-b1)/a1+1-(!b1?1:0)<<endl; }}
0 0
- hdu 1573 X问题 中国剩余定理
- hdu 1573 X问题(中国剩余定理)
- (中国剩余定理) hdu 1573 X问题
- HDU 1573 X问题 中国剩余定理
- HDU 1573 X问题(中国剩余定理)
- HDU-1573 X问题(中国剩余定理)
- HDU 1573 X问题 (中国剩余定理非互质)
- HDU 1573 X问题 数论-(中国剩余定理)
- HDU 1573X问题(中国剩余定理)
- hdu 1573 X问题 非互素的中国剩余定理应用
- X问题 hdu 1573 韩信点兵 中国剩余定理
- HDU 1573 X问题 (中国剩余定理)
- HDU - 1573 X问题 (中国剩余定理)
- HDU 1573 X问题 (中国剩余定理 模线性方程组)
- hdu 1573 X问题 (中国剩余定理)
- hdu 1573 X问题 (中国剩余定理)
- [中国剩余定理]Hdu 1573——X问题
- Hdu 1573 X问题 + Hdu 3579 Hello Kiki (模线性方程组-非互质中国剩余定理)
- logstash multiline
- 项目中各种后缀名的文件们
- 根据前序和中序建立二叉树
- C++11时代的标准库快餐教程(2) - STL概览
- 【POJ】1004. Financial Management
- HDU 1573 X问题 (中国剩余定理非互质)
- android自定义view(二)创建复合控件
- c!!!#!!用!!W!!M!!!!I!获!!!取显!!!示!!!器!的设!!!!备信息
- Android Studio 查看签名文件
- js编码规范总结
- 行内与块级元素总结
- 设计模式二:观察者模式
- java菜鸟的学习历程
- Typora软件学习总结(这里以Mac版的为例)