HDOJ1573X问题
https://acm.hdu.edu.cn/showproblem.php?pid=1573
n组线性同余方程求解,最后求出多少解。而最终的解的周期为最小公倍数,范围内的,需要这样算。如果最小超过,那么直接是0,如果无解为0,如果最小为0,那么直接为k个lcm,否则要加上自身的1,因为要求为正整数解。
1 #include<bits/stdc++.h>
2 using namespace std;
3 typedef long long ll;
4 ll t,n,m,a1,b1,a2,b2,c,k,ans;
5 const int N=52;
6 ll s[N],r[N];
7 ll ex_gcd(ll a,ll b,ll &x,ll &y)
8 {
9 if(!b){x=1,y=0;return a;};
10 ll d=ex_gcd(b,a%b,x,y);
11 ll tmp=x;
12 x=y,y=tmp-a/b*y;
13 return d;
14 }
15 int main()
16 {
17 scanf("%lld",&t);
18 while(t--)
19 {
20 ll x,y,a,b;
21 bool flag=true;
22 scanf("%lld%lld",&n,&m);
23 for(int i=1;i<=m;i++) scanf("%lld",&s[i]);
24 for(int i=1;i<=m;i++) scanf("%lld",&r[i]);
25 a1=s[1],b1=r[1];
26 for(int i=2;i<=m;i++)
27 {
28 a2=s[i],b2=r[i];
29 a=a1,b=a2,c=b2-b1;
30 ll d=ex_gcd(a,b,x,y);
31 if(c%d!=0) {cout<<0<<'\n';flag=0;break;}
32 k=b/d;
33 x=(x*(c/d)%k+k)%k;
34 b1=a1*x+b1;
35 a1=a1*(a2/d);
36 }
37 if(flag)
38 {
39 if(n-b1<0) cout<<0<<'\n';
40 else
41 {
42 ans=(n-b1)/a1+(b1!=0);
43 cout<<ans<<'\n';
44 }
45 }
46 }
47 return 0;
48 }
HDOJ1573X问题的更多相关文章
随机推荐
- 如何为Dash/Zeal生成c++ 文档: 以abseil文档为例
目录 1. 软件安装 2 Sample源文件下载: 3. 生成步骤 3.1 使用doxygen生成html文件 3.2 使用docsetutil 生成 dash/Zeal 格式 1. 软件安装: 1. ...
- 内存泄漏避雷!你真的了解重写equals()和hashcode()方法的原因吗?
基本概念 要比较两个对象是否相等时需要调用对象的equals() 方法: 判断对象引用所指向的对象地址是否相等 对象地址相等时, 那么对象相关的数据也相等,包括: 对象句柄 对象头 对象实例数据 对象 ...
- ubuntu 10.04安装和配置Samba
1. 安装samba服务器 sudo apt-get install samba //主程序包 sudo apt-get install smbfs //文件下载挂载工具 2. 创建共享目录 mk ...
- dart系列之:如丝滑般柔顺,操作文件和目录
目录 简介 File 读取整个文件 以流的形式读取文件 随机访问 文件的写入 处理异常 总结 简介 文件操作是IO中非常常见的一种操作,那么对应dart语言来说,操作文件是不是很简单呢?实际上dart ...
- Jenkins安装部署使用图文详解(非常详细)
前言 最近公司需要弄一套自动化运维部署,于是抽空学习了一下,用了两天左右完成Jenkins的安装部署和各种项目的配置化,于是整理一下进行分享. 介绍 Jenkins是一个独立的开源软件项目,是基于Ja ...
- 【JAVA今法修真】 第六章 天道无情,锁定乾坤
您好,我是南橘,万法仙门的掌门,刚刚从九州世界穿越到地球,因为时空乱流的影响导致我的法力全失,现在不得不通过这个平台向广大修真天才们借去力量.你们的每一个点赞,每一个关注都是让我回到九州世界的助力,兄 ...
- 【LeetCode】1181. Before and After Puzzle 解题报告(C++)
作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 保存首尾字符串 日期 题目地址:https://lee ...
- 【LeetCode】318. Maximum Product of Word Lengths 解题报告(Python)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 set 位运算 日期 题目地址:https://le ...
- 1370 - Bi-shoe and Phi-shoe
1370 - Bi-shoe and Phi-shoe PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit: 3 ...
- Histogram Processing
目录 HISTOGRAM EQUALIZATION 代码示例 HISTOGRAM MATCHING (SPECIFICATION) 其它 Gonzalez R. C. and Woods R. E. ...