题目链接 \(Click\) \(Here\)

中国剩余定理的板子。小心取模。

#include <bits/stdc++.h>
using namespace std; const int N = 11;
#define int long long int n, M = 1, a[N], b[N], t[N], ans; int fmul (int x, int y, int mod) {
int res = 0;
while (y) {
if (y & 1) {
res = (res + x) % mod;
}
x = (x + x) % mod;
y >>= 1;
}
return res;
} void exgcd (int a, int b, int &x, int &y) {
if (b == 0) {x = 1, y = 0; return;}
exgcd (b, a % b, x, y);
int xx = y, yy = x - (a / b) * y;
x = xx, y = yy;
} signed main () {
cin >> n;
for (int i = 1; i <= n; ++i) cin >> a[i];
for (int i = 1; i <= n; ++i) cin >> b[i];
for (int i = 1; i <= n; ++i) a[i] = ((a[i] % b[i]) + b[i]) % b[i];
for (int i = 1; i <= n; ++i) M *= b[i];
for (int i = 1; i <= n; ++i) {
exgcd (M / b[i], b[i], t[i], t[0]);
t[i] = ((t[i] % b[i]) + b[i]) % b[i];
ans = (ans + fmul (fmul (M / b[i], t[i], M), a[i], M)) % M;
}
cout << ((ans % M) + M) % M << endl; }

Luogu P3868 [TJOI2009]猜数字的更多相关文章

  1. P3868 [TJOI2009]猜数字

    [TJOI2009]猜数字 中国剩余定理 求解i=1 to n : x≡a[i] (mod b[i])的同余方程组 设 t= ∏i=1 to n b[i] 我们先求出 i=1 to n : x≡1 ( ...

  2. 洛谷P3868 [TJOI2009]猜数字(中国剩余定理,扩展欧几里德)

    洛谷题目传送门 90分WA第二个点的看过来! 简要介绍一下中国剩余定理 中国剩余定理,就是用来求解这样的问题: 假定以下出现数都是自然数,对于一个线性同余方程组(其中\(\forall i,j\in[ ...

  3. 洛谷 P3868 [TJOI2009]猜数字

    题意简述 给定\(a[1],a[2],\cdots,a[n]\) 和 \(b[1],b[2],\cdots,b[n]\),其中\(b\)中元素两两互素. 求最小的非负整数\(n\),满足对于任意的\( ...

  4. CRT【p3868】[TJOI2009]猜数字

    Description 现有两组数字,每组k个,第一组中的数字分别为:a1,a2,...,ak表示,第二组中的数字分别用b1,b2,...,bk表示.其中第二组中的数字是两两互素的.求最小的非负整数n ...

  5. [TJOI2009]猜数字

    题目描述 现有两组数字,每组k个,第一组中的数字分别为:a1,a2,...,ak表示,第二组中的数字分别用b1,b2,...,bk表示.其中第二组中的数字是两两互素的.求最小的非负整数n,满足对于任意 ...

  6. [Luogu3868] [TJOI2009]猜数字

    题目描述 现有两组数字,每组k个,第一组中的数字分别为:a1,a2,...,ak表示,第二组中的数字分别用b1,b2,...,bk表示.其中第二组中的数字是两两互素的.求最小的非负整数n,满足对于任意 ...

  7. [TJOI2009]猜数字(洛谷 3868)

    题目描述 现有两组数字,每组k个,第一组中的数字分别为:a1,a2,...,ak表示,第二组中的数字分别用b1,b2,...,bk表示.其中第二组中的数字是两两互素的.求最小的非负整数n,满足对于任意 ...

  8. [TJOI2009] 猜数字 - 中国剩余定理

    现有两组数字,每组k个,第一组中的数字分别为:a1,a2,...,ak表示,第二组中的数字分别用b1,b2,...,bk表示.其中第二组中的数字是两两互素的.求最小的非负整数n,满足对于任意的i,n ...

  9. C语言猜数字游戏

    猜数字游戏,各式各样的实现方式,我这边提供一个实现方式,希望可以帮到新手. 老程序猿就不要看了,黑呵呵 源代码1 include stdio.h include stdlib.h include ti ...

随机推荐

  1. cuda编程-矩阵乘法(1)

    本方法采用简单的单线程计算每组行和列乘加运算 代码如下: #include <stdio.h> #include <stdlib.h> #include <iostrea ...

  2. codeforces509B

    Painting Pebbles CodeForces - 509B There are n piles of pebbles on the table, the i-th pile contains ...

  3. Nginx 滑动窗口与缓冲区

    L:125

  4. django CBV视图源码分析

    典型FBV视图例子 url路由系统 from django.conf.urls import url from django.contrib import admin from luffycity.v ...

  5. git在Linux下的安装

    参考:https://git-scm.com/book/zh/v1/%E8%B5%B7%E6%AD%A5-%E5%AE%89%E8%A3%85-Git Git 的工作需要调用 curl,zlib,op ...

  6. 19JDBC初体验

    一.JDBC常用类和接口 JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API.JDBC是Java访问数据库的标准规范,可以为 ...

  7. mysql,mybatis模糊查询

    <if test="deviceType != null and deviceType != ''">and device_type like CONCAT('%', ...

  8. linux-内核参数优化参考指标

    民间最全的Linux系统内核参数调优说   相信做运维的同仁,进行运维环境初建时,必须要考虑到操作系统内核参数的优化问题,本人经历数次的运维环境重建后,决定要自行收集一份比较完善的系统内核参数优化说明 ...

  9. python的图形模块PIL小记

    前言: 跟我一块住的室友是个搞通信,每天下班后基本必须做的事情是,第一P图,将那些不合格的图片上的数据,p成合格的.第二就是将做好的P图以及产生的日志文件按照固定的名字重新命名.我为了他能够早点睡觉, ...

  10. 洛谷P2822 组合数问题

    输入输出样例 输入样例#1: 1 2 3 3 输出样例#1: 1 输入样例#2: 2 5 4 5 6 7 输出样例#2: 0 7 说明 [样例1说明] 在所有可能的情况中,只有C_2^1 = 2C21 ...