http://acm.fzu.edu.cn/problem.php?pid=1402

逗比题..和前面那题一样解就行了...

反正都是素数,就把中国剩余定理拓展一下...普及姿势好了:


逆元:

对于同余方程 :

我们有 :

x就是A对B的逆元了 用EX_GCD求出x即可 ,这里x可能为负数, 对B做正取模


中国剩余定理 :

对于方程组

我们有如下性质

然后带公式即可


/********************* Template ************************/
#include <set>
#include <map>
#include <list>
#include <cmath>
#include <ctime>
#include <deque>
#include <queue>
#include <stack>
#include <bitset>
#include <cstdio>
#include <string>
#include <vector>
#include <cassert>
#include <cstdlib>
#include <cstring>
#include <sstream>
#include <fstream>
#include <numeric>
#include <iomanip>
#include <iostream>
#include <algorithm>
#include <functional>
using namespace std;#define EPS         1e-8
#define MAXN        1005
#define MOD         (int)1e9+7
#define PI          acos(-1.0)
#define DINF        (1e10)
#define LINF        ((1LL)<<50)
#define INF         (0x3f3f3f3f)
#define max(a,b)    ((a) > (b) ? (a) : (b))
#define min(a,b)    ((a) < (b) ? (a) : (b))
#define max3(a,b,c) (max(max(a,b),c))
#define min3(a,b,c) (min(min(a,b),c))
#define BUG         cout<<"BUG! "<<endl
#define line        cout<<"--------------"<<endl
#define L(t)        (t << 1)
#define R(t)        (t << 1 | 1)
#define Mid(a,b)    ((a + b) >> 1)
#define lowbit(a)   (a & -a)
#define FIN         freopen("in.txt","r",stdin)
#define FOUT        freopen("out.txt","w",stdout)
#pragma comment     (linker,"/STACK:102400000,102400000")typedef long long LL;
// typedef unsigned long long ULL;
// typedef __int64 LL;
// typedef unisigned __int64 ULL;
LL gcd(LL a,LL b){ return b ? gcd(b,a%b) : a; }
LL lcm(LL a,LL b){ return a / gcd(a,b) * b; }/*********************   F   ************************/pair<LL,LL> ex_gcd(LL a,LL b){if(b == 0) return make_pair(1,0);pair<LL,LL> t = ex_gcd(b,a%b);return make_pair(t.second , t.first - (a / b) * t.second);
}
LL China_Remainder(LL a[],LL b[],int n){LL res = 0,det = 1;for(int i = 0 ; i < n ; i++) det *= a[i];for(int i = 0 ; i < n ; i++){LL xx = det / a[i];pair<LL,LL> t = ex_gcd(xx,a[i]);t.first = (t.first % a[i] + a[i]) % a[i]; // 求xx对a[i]的逆元 ,最后对a[i]取模res = (res + (xx * b[i] * t.first) % det) % det;}return res;
}
int main()
{int n;while(cin>>n){LL a[20],b[20];for(int i = 0 ; i < n ; i++){cin>>a[i]>>b[i];}LL ans = China_Remainder(a,b,n);cout<<ans<<endl;}return 0;
}

转载于:https://www.cnblogs.com/Felix-F/p/3266695.html

FZU 1402 猪的安家 中国剩余定理相关推荐

  1. FZU 1402 猪的安家 中国剩余定理

    来源:http://acm.fzu.edu.cn/problem.php?pid=1402 题意:中文~ 思路:就是中国剩余定理的模板题,本来是做poj上的一道题,那道题没要求两辆不互质,还要转化成两 ...

  2. P2480-[SDOI2010]古代猪文【中国剩余定理,Lucas定理】

    大早上起来写题有助于醒脑(其实是昨晚没睡好/kk 正题 题目链接:https://www.luogu.com.cn/problem/P2480 题目大意 给出nnn和ggg,求g∑d∣nCnd%999 ...

  3. 中国剩余定理拓展中国剩余定理

    复习 中国剩余定理: x ≡ a 1 ( m o d m 1 ) x ≡a_1(mod m_1) x≡a1​(modm1​) x ≡ a 2 ( m o d m 2 ) x ≡a_2(mod m_2) ...

  4. CF338D GCD Table(拓展中国剩余定理,细节处理,2900分)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 CF338D GCD Table(拓展中国剩余定理,细节处理,2900分) Problem 有一张 n ...

  5. 初等数论--同余方程--同余方程组:中国剩余定理

    初等数论--同余方程--同余方程组:中国剩余定理 博主是初学初等数论(整除+同余+原根),本意是想整理一些较难理解的定理.算法,加深记忆也方便日后查找:如果有错,欢迎指正. 我整理成一个系列:初等数论 ...

  6. 数论一之定理证明——裴蜀/威尔逊/费马/扩展欧几里得/[扩展]欧拉/[扩展]中国剩余定理,欧拉函数,逆元,剩余系,筛法

    打死没想到会在H老师处学懂数论 同余,整除 模运算 埃式筛法 欧拉筛法 最大公约数和最小公倍数 辗转相除法 更相减损术 裴蜀定理 威尔逊定理 费马定理 同余等价类.剩余系.缩系 欧拉函数 欧拉定理 扩 ...

  7. 信奥中的数学:孙子定理 中国剩余定理

    孙子定理 中国剩余定理 孙子定理 中国剩余定理_Dreamer Thinker Doer-CSDN博客 中国剩余问题(简介+详解) 中国剩余问题(简介+详解)_dreamzuora的博客-CSDN博客 ...

  8. 数论 —— 线性同余方程组与中国剩余定理

    [线性同余方程组] 由若干个线性同余方程构成的线性方程组. 例如: 其解法最早由我国<孙子算经>给出,因此解法称为"孙子定理",又叫"中国剩余定理" ...

  9. 通常情况下的中国剩余定理

    这几天学了学中国剩余定理....本来计划是一天学互质版一天学非互质版的,结果非互质版就学了好长时间...不过好在会证明了,考场上大力推一波应该是没问题的吧... 中国剩余定理是求形如x≡a1(mod ...

最新文章

  1. 创建 Pool VIP - 每天5分钟玩转 OpenStack(122)
  2. MySQL 中的反斜杠 \\,真是太坑了!!
  3. python las转txt
  4. python 网络编程 struct解包时报错 struct.error: unpack requires a buffer of 4 bytes
  5. Java摩托车汽车轮胎数量,摩托车轮子上的知识,你知道多少?
  6. Java并发编程-ConcurrentHashMap
  7. NOIP 2013 day2
  8. 码云推出企业 Git 和项目管理现场培训服务
  9. Effective C# 原则3:选择is或者as操作符而不是做强制类型转换(翻译)
  10. 7-2 两个有序链表序列的合并 (20分)
  11. 计算机应用技术题,计算机应用技术复习题.doc
  12. OCR中文文字识别软件
  13. 安装Ubuntu 系统
  14. aws python sns_手把手教你用Python抓取AWS的日志(CloudTrail)数据
  15. JAVA入门————API(常用API)
  16. 亚马逊Alexa的深度学习与语音识别的核心技术原理
  17. mongodb netcore 操作封装_mongodb 的基本函数语法封装
  18. wordpress主题html5,Salutation 强大的HTML5商务WordPress主题集成BuddyPress[更新至v3.0.7]
  19. 黑吧安全网--古墓探秘
  20. _bstr_t与BSTR

热门文章

  1. 【C++】 Boost 库编译技巧总结
  2. 使用函数自调用实现将局部变量转换成全局变量
  3. 傅里叶变换对噪声进行频谱分析
  4. 微信小程序 - 高级 - 深度实践 - wx:for-item 与 data-xxx 的联合应用 实现后台动态数据自动加载的正确方法概述
  5. esp32找不到com端口_玩转GPIO之ESP32点灯大法(MicroPython版)
  6. 工程安全cso千人千面计算机,千人一面变为千人千面 自适应教育助力因材施教...
  7. u大侠pe系统桌面计算机,WinPE系统的四种启动方法
  8. thinkphp extend.php,【ThinkPHP5.1】如何引用extend的类库
  9. wxpython textctrl_wxPython TextCtrl类
  10. 对pca降维后的手写体数字图片数据分类_知识干货-机器学习-TSNE数据降维