中国剩余定理——nyoj
中国剩余定理------
解法如下:假设存在一个数M M%A=a , M%B=b , M%C=c
并且A,B,C必须俩俩互质。满足这一条件下:
存在一个R1使得 , K1=A*B*R1 ,K1%C==1.
存在一个R2使得 , K2=C*B*R2,K2%A==1.
存在一个R3使得 , K3=C*A*R3,K3%B==1.
则必定满足 M=(K1*c+K2*a+k3*b)%(A*B*C);
但是此题有条件10<=M<=100;
所以可以在此范围里找,有则输出,没有则输出"No answer";
1.因为这个数能被5和7整除而不能被3整除,所以肯定是5和7的倍数,也就是35k,但是我们需要保证被3除的结果是a,所以我们令k=2,这样,70k%3=1,而k=1时,35k%3=2,所以,能被5和7整除不能被3整除且余数为a的数为70a。
2.被3和7整除,不能被5整除,则为21k,k=1时,正好余1,所以这个数为21b。
3.被3和5整除,不能被7整除,则为15k,k=1时,正好余1,所以这个数为15c。
所以,这个数为70a+21b+15c,又因为3、5、7的最小公倍数为105,所以这个数肯定在0到105以内,所以对结果取余一下即可。
推广到其他情况也是同样道理。
比如,求除以5、7、11以后所得余数为a,b,c.则这个数是:231a+330b+210c,然后对5×7×11=385取余即可。
代码如下:
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int INF = 0x3f3f3f3f;
const int maxn = ; int main()
{
int a,b,c;
while(~scanf("%d%d%d",&a,&b,&c)){
int ans = (*a+*b+*c)%;
if(ans <= &&ans >= )
printf("%d\n",ans);
else
printf("No answer\n");
} return ;
}
——
中国剩余定理——nyoj的更多相关文章
- ACM/ICPC 之 中国剩余定理+容斥原理(HDU5768)
二进制枚举+容斥原理+中国剩余定理 #include<iostream> #include<cstring> #include<cstdio> #include&l ...
- 中国剩余定理(Chinese Remainder Theorem)
我理解的中国剩余定理的含义是:给定一个数除以一系列互素的数${p_1}, \cdots ,{p_n}$的余数,那么这个数除以这组素数之积($N = {p_1} \times \cdots \tim ...
- 51nod1079(中国剩余定理)
题目链接: http://www.51nod.com/onlineJudge/user.html#!userId=21687 题意: 中文题诶~ 思路: 本题就是个中国剩余定理模板题,不过模拟也可以过 ...
- HDU 5446 中国剩余定理+lucas
Unknown Treasure Time Limit: 1500/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Other ...
- poj1006生理周期(中国剩余定理)
/* 中国剩余定理可以描述为: 若某数x分别被d1..….dn除得的余数为r1.r2.….rn,则可表示为下式: x=R1r1+R2r2+…+Rnrn+RD 其中R1是d2.d3.….dn的公倍数,而 ...
- poj 1006:Biorhythms(水题,经典题,中国剩余定理)
Biorhythms Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 110991 Accepted: 34541 Des ...
- UVA 11754 (暴力+中国剩余定理)
题目链接: http://www.bnuoj.com/v3/problem_show.php?pid=20172 题目大意:有C个模方程,每个方程可能有k余数,求最小的S个解. 解题思路: 看见模方程 ...
- poj1006-Biorhythms(中国剩余定理)
一,题意:右上角中文.二,思路: 1,由题意得出方程组 2,利用中国剩余定理求解 3,求出最小正整数三,步骤: 1,由题意得出方程组 (n+d) % 23 = p ; (n+d) % 28 = e ; ...
- POJ 1006 - Biorhythms (中国剩余定理)
B - Biorhythms Time Limit:1000MS Memory Limit:10000KB 64bit IO Format:%I64d & %I64u Subm ...
随机推荐
- import MySQLdb 与 import mysql 有什么区别?
MySQLdb 只支持Python 2.* ,暂时还不支持3.* 可以用PyMySQL 代替,把__init__.py 中添加俩行: import pymysql pymysql.install_as ...
- viewFlipper 之二
main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xml ...
- html5的常用函数
required 验证非空 readonly 文本只读 video 视频播放标签 Ogg 带有 Theora 视频编码和 Vorbis 音 ...
- Laravel 文档中的 Service Providers
$this->app->singleton('ReportServices', function () { return new \App\Services\ReportServices( ...
- JVM类加载机制(转)
原文出自:http://www.cnblogs.com/ityouknow/p/5603287.html 1.什么是类的加载 类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运 ...
- HackerRank - greedy-florist 【贪心】
HackerRank - greedy-florist [贪心] 题意 有N个人 要去买K朵花.老板为了最大化新顾客的数量.就压榨回头客.每一朵花都有一个基本价格.一个顾客买下这朵花的价格是他来这里买 ...
- 2017 计蒜之道 初赛 第三场 D. 腾讯狼人杀 (点边都带权的最大密度子图)
点边都带权的最大密度子图,且会有必须选的点. 求\(\frac{\sum w_e}{k*(2n-k)}\)的最大值,其中k为子图点数 设\[h(g) = \sum w_e - g*(2nk-k^2)\ ...
- SqlHelper简单实现(通过Expression和反射)6.Providor模式(工厂+策略)可配置数据库选择
基本思想,将MsSqlDbUtility和MySqlDbUtility设计成单例模式,通过App.config或Web.config进行默认的数据库设置,然后通过DbUtilityFactory获取D ...
- redis数据持久化内存不足
原因:写数据到redis里面写不进去,查看redis日志显示: Can't save in background: fork: Cannot allocate memory 在小内存的进程上做一个fo ...
- 【Python】__slots__ 、@property、多重继承、定制类、枚举类、元类
__slots__ @property 多重继承 定制类 枚举类 元类 [使用__slots__] 1.动态语言的一个特点就是允许给实例绑定任意的方法和变量,而静态语言(例如Java)必须事先将属性方 ...