<题目链接>

题目大意:

给你一些模数和余数,让你求出满足这些要求的最小的数的值。

解题分析:

中国剩余定理(模数不一定互质)模板题

#include<stdio.h>
using namespace std;
#define ll long long ll A[],B[];//B[i]为余数
ll dg,ans;//dg为A[i]的最小公倍数 ans 为最小解
void exgcd(ll a, ll b, ll &d, ll&x, ll &y)
{
if (!b) {d=a; x=; y=;}
else
{
exgcd(b, a%b, d, y, x);
y-=x*(a/b);
}
}
ll gcd(ll a, ll b)
{
if (!b) return a;
else gcd(b, a%b);
} ll china(ll n)
{
ll a,b,d,x,y,dm;
ll c,c1,c2;
a=A[]; c1=B[];
for (int i=; i<n; i++)
{
b=A[i]; c2=B[i];
exgcd(a, b, d, x, y);
dm=b/d;
c=c2-c1;
if (c%d) return -;
x=((x*c/d)%dm+dm)%dm;//x可能为负
c1=a*x+c1;
a=a*b/d;
} //求最小公倍数
dg=a;//dg是最大公约数
if (!c1)//考虑c1为0的情况
{
c1=;
for (int i=; i<n; i++)
{
c1=c1*A[i]/gcd(c1, A[i]);
}
dg=c1;//此时dg为最小公倍数
}
return c1;//c1为最小的X
} int main(){
int t;
scanf("%d",&t);
int ncase=;
while(t--){
int m;
scanf("%d",&m); for(int i=;i<m;i++)
scanf("%lld",&A[i]);
for(int i=;i<m;i++)
scanf("%lld",&B[i]);
ans=china(m); //利用模板找到满足条件的最小值
printf("Case %d: %lld\n",++ncase,ans);
}
return ;
}

2018-08-20

hdu 3579 Hello Kiki【中国剩余定理】(模数不要求互素)(模板题)的更多相关文章

  1. HDU 3579 Hello Kiki 中国剩余定理(合并方程

    题意: 给定方程 res % 14 = 5 res % 57 = 56 求res 中国剩余定理裸题 #include<stdio.h> #include<string.h> # ...

  2. hdu 3579 Hello Kiki (中国剩余定理)

    Hello Kiki Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  3. 中国剩余定理模数不互质的情况(poj 2891

    中国剩余定理模数不互质的情况主要有一个ax+by==k*gcd(a,b),注意一下倍数情况和最小 https://vjudge.net/problem/POJ-2891 #include <io ...

  4. HDU 5768 Lucky7 容斥原理+中国剩余定理(互质)

    分析: 因为满足任意一组pi和ai,即可使一个“幸运数”被“污染”,我们可以想到通过容斥来处理这个问题.当我们选定了一系列pi和ai后,题意转化为求[x,y]中被7整除余0,且被这一系列pi除余ai的 ...

  5. HDU 5768 Lucky7 (中国剩余定理 + 容斥 + 快速乘法)

    Lucky7 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5768 Description When ?? was born, seven crow ...

  6. hdu X问题 (中国剩余定理不互质)

    http://acm.hdu.edu.cn/showproblem.php?pid=1573 X问题 Time Limit: 1000/1000 MS (Java/Others)    Memory ...

  7. hdu 5446 Unknown Treasure 中国剩余定理+lucas

    题目链接 求C(n, m)%p的值, n, m<=1e18, p = p1*p2*...pk. pi是质数. 先求出C(n, m)%pi的值, 然后这就是一个同余的式子. 用中国剩余定理求解. ...

  8. hdu 3579 Hello Kiki

    不互质的中国剩余定理…… 链接http://acm.hdu.edu.cn/showproblem.php?pid=3579 #include<iostream>#include<st ...

  9. hdu 3579 Hello Kiki 不互质的中国剩余定理

    Hello Kiki Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Probl ...

随机推荐

  1. PXC中的GTIDs

    基本环境:PXC 5.7.19 Row+Gtid,3节点 一.Galera GTID vs MySQL GTID 1.1.Galera GTID vs MySQL GTID Both kinds of ...

  2. sybench压测下模拟误truncate数据恢复

    基本环境:官方社区版MySQL 5.7.21 Row+Gtid开启sysbench压测,使用mysqldump备份数据库,执行truncate操作,恢复数据到truncate前的时间点1.切换日志,记 ...

  3. MySQL备份可能遇到的坑

    MySQL备份工具,支持各种参数选项,使用不同的选项极有可能影响备份处理过程.本文使用我们常规认为合理的备份参数,测试/验证是否存在容易忽视的坑 # 常规备份参数 # mysqldump shell& ...

  4. 前端mock数据的几种方式

    方式 备注 本地php服务架设 直接输出json 使用在线mock服务 如easyMock.apizza.Rap1\2 , 可以远程协作  本地node服务:koa+mongodb    本地node ...

  5. mysql 案例~select引起的性能问题

    案例1 背景:测试环境下发现大量select查询,而且负载飙升到90+ 排查思路: 1 老规则,按照排错脚本走一圈,规划出几个元素(1 针对库访问的统计 2针对具体语句类型的统计),发现有大量的sel ...

  6. aar jar包打包

    使用Android Studio Module的方式编译出aar和jar包: aar包:打aar包时,gradle compile依赖编译进来的包不会被打到aar包中,所以接入aar的应用仍然需要添加 ...

  7. java生成TXT

    1.由于公司需要生成如下格式TXT: var ovr_parameters={ "changeMainVideoList": [ ], "indexList": ...

  8. STM32 变量无法赋值问题

    STM32 在用JLink 调试的时候发现有一条将unsigned char赋值给int的语句始终不能执行,int类型变量的值始终为0: 查资料找到这个问题是编译器优化的原因,也就是说由于编译器优化, ...

  9. kafka系列十、kafka常用管理命令

    一.Topic管理 1.创建topic kafka-topics.sh --zookeeper 47.52.199.52:2181 --create --topic test-15 --replica ...

  10. TCP/IP指纹鉴别 fingerprint

    http://www.freebuf.com/articles/system/30037.html使用TCP/IP协议栈指纹进行远程操作系统辨识 Fyodor <fyodor@insecure. ...