【题意】:给定p,e,i,d,求解(x + d) % 23 = p(x + d) % 28 = e(x + d) % 33 = ix最小正整数值【知识点】:中国剩余定理【题解】:典型的 xmodmi = ai模型,其中mi间两两互素。但该题式子较少,也可以直接自己化简带入值。【代码】: 1 #inc...
分类:
其他好文 时间:
2014-07-14 09:16:21
阅读次数:
251
生理周期Time Limit:1000MSMemory Limit:10000KTotal Submissions:111426Accepted:34702Description人生来就有三个生理周期,分别为体力、感情和智力周期,它们的周期长度为23天、28天和33天。每一个周期中有一天是高峰。在高...
分类:
其他好文 时间:
2014-07-09 23:55:16
阅读次数:
409
题目链接:uva 756 - Biorhythms
题目大意:三个周期,23,28,33,输入为分别为在新一年中(三个周期均从0开始),出现周期中峰值的一天,以及当前的日子,问说需要经过多少天,才能使得三个峰值的在同一天。
解题思路:裸的中国剩余定理。
#include
#include
typedef long long ll;
const int maxn = 5;
con...
分类:
其他好文 时间:
2014-07-03 18:35:05
阅读次数:
204
UVA 11754 - Code Feat
题目链接
题意:给定一个c个x, y1,y2,y3..yk形式,前s小的答案满足s % x在集合y1, y2, y3 ... yk中
思路:LRJ大白例题,分两种情况讨论
1、所有x之积较小时候,暴力枚举每个集合选哪个y,然后中国剩余定理求解
2、所有x之积较大时候,选定一个k/x尽可能小的序列,枚举x * t + y (t =...
分类:
其他好文 时间:
2014-07-02 16:21:54
阅读次数:
373
题目链接:uva 11754 - Code Feat
题目大意:求一个数N,给出C和S,表示有C个条件,每个条件有X 和 k,然后是该个条件的k个yi,即NmodX=yj,输出满足的最小的S个N,要求正整数。
解题思路:total为所有的k的乘积,也就是可以作为一组完整限定条件的可能数,当个确定条件可以用中国剩余定理处理。但是如果total太大的话,处理的情况比较多。不过total数大...
分类:
其他好文 时间:
2014-07-02 09:09:01
阅读次数:
184
756 - Biorhythms
题目链接
基本就是裸的中国剩余定理。
代码:
#include
#include
const int M = 23 * 28 * 33;
const int m[3] = {23, 28, 33};
int p[3], d;
int gcd(int a, int b, int &x, int &y) {
if (!b) {x = ...
分类:
其他好文 时间:
2014-06-26 14:30:56
阅读次数:
287
问题:给定a1a2...an,
和m1,m2...mn,mi之间两两互质,求一个x,使得x/ai=mi
构造方法:
先求出M=∏ni=1mi,
对于每个mi,求出M / mi, 然后和mi利用拓展欧几里得算法求出M/mi?p+mi?q=1时的值,取∑ni=1(p?ai?M/mi)就是答案。
证明:
证明参考了wiki
由于mi之间两两互质,所以gcd(mi,mj)...
分类:
其他好文 时间:
2014-06-26 13:23:15
阅读次数:
279
题意:
给定方程
res % 14 = 5
res % 57 = 56
求res
中国剩余定理裸题
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
#define N 10005
#define ll __int64
ll gcd(ll a, ll ...
分类:
其他好文 时间:
2014-06-24 23:12:29
阅读次数:
186
题意:
给定n,AA
下面n个数m1,m2···mn
则有n条方程
res % m1 = m1-AA
res % m2 = m2-AA
问res的最小值
直接上剩余定理,嘿嘿
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
#define ll ...
分类:
其他好文 时间:
2014-06-24 22:32:50
阅读次数:
315
题目链接:点击打开链接
给定n*m的矩阵,[i,j]的点值为gcd(i,j)
给定一个k长的序列,问是否能匹配上 矩阵的某一行的连续k个元素
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
#define ll __int64
ll gc...
分类:
其他好文 时间:
2014-06-24 19:12:34
阅读次数:
210