同余方程(codevs 1200)
求关于 x 同余方程 ax ≡ 1 (mod b)的最小正整数解。
输入只有一行,包含两个正整数 a, b,用 一个 空格隔开。
输出只有一行包含一个正整数x0,即最小正整数解,输入数据保证一定有解。
3 10
7
【数据范围】
对于 40% 的数据, 2 ≤b≤ 1,000 ;
对于 60% 的数据, 2 ≤b≤ 50,000,000
对于 100% 的数据, 2 ≤a, b≤ 2,000,000,000
/*
ax=b(mod c) => ax-c=bn => ax+by=c
扩展欧几里得
*/
#include<cstdio>
#include<iostream>
using namespace std;
int e_gcd(int a,int b,int &x,int &y){
if(b==){
x=;y=;
return a;
}
int r=e_gcd(b,a%b,x,y);
int t=x;
x=y;
y=t-a/b*y;
return r;
}
int main(){
int a,b,x,y;
cin>>a>>b;
int gcd=e_gcd(a,b,x,y);
x=x*/gcd;
if(x>){
while(x-(b/gcd)>)x-=(b/gcd);
}
else{
while(x+(b/gcd)<)x+=gcd;
x+=(b/gcd);
}
cout<<x;
return ;
}
同余方程(codevs 1200)的更多相关文章
- 扩展gcd codevs 1200 同余方程
codevs 1200 同余方程 2012年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Description 求关 ...
- [NOIP2012提高组] CODEVS 1200 同余方程(扩展欧几里德算法)
数论题..所有数论对我来说都很恶心..不想再说什么了.. ------------------------------------------------ #include<iostream&g ...
- Codevs 1200 同余方程 2012年NOIP全国联赛提高组
1200 同余方程 2012年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Description 求关于 x 同余方程 a ...
- codevs 1200 同余方程 2012年NOIP全国联赛提高组 x
/*我在提交的时候发现了一个特别好玩的事,有兴趣的话,可以自己尝试一下:把下面说的地方的y=0改为y=1在codevs里面能够ac,这……数据水?到一定境界……厉害了,吓得我还以为自己对了,结果一讲才 ...
- 【扩展欧几里得】Codevs 1200: [noip2012]同余方程
Description 求关于 x 同余方程 ax ≡ 1 (mod b)的最小正整数解. Input Description 输入只有一行,包含两个正整数 a, b,用 一个 空格隔开. Outpu ...
- codevs 1200 同余方程 逆元
题目描述 Description 求关于 x 同余方程 ax ≡ 1 (mod b)的最小正整数解. 输入描述 Input Description 输入只有一行,包含两个正整数 a, b,用 一个 空 ...
- codevs 1200:同余方程
题目描述 Description 求关于 x 同余方程 ax ≡ 1 (mod b)的最小正整数解. 输入描述 Input Description 输入只有一行,包含两个正整数 a, b,用 一个 空 ...
- 【codevs 1200】【NOIP 2012】同余方程 拓展欧几里德求乘法逆元模板题
模板,,, #include<cstdio> using namespace std; void exgcd(long long a,long long b,long long & ...
- codevs 1200 同余方程 (Extend_Eulid)
/* 扩展欧几里得 ax%b==1 -> ax-by==1 求不定方程的一组解 使x为最小正整数解 */ #include<iostream> #include<cstdio& ...
随机推荐
- linux命令行调试邮件服务器
linux命令行调试邮件服务器 1. Linux客户端调试邮件过程 [root@mxtest ~]# telnet mail.xx.com 25 Trying 172.16.236.103... Co ...
- iOS--UIScrollView基本用法和代理方法
主要是为了记录下UIScrollView的代理方法吧 在帮信息学院的学长做东西的时候需要大量用到分块浏览,所以就涉及到很多的关于scrollview,所以也就有了这篇文章 - (void)view ...
- NSOperation、NSOperationQueue
NSOperation.NSOperationQueue NSOperation 和 NSOperationQueue 配合使用也能实现多线程. NSOperation 继承于 NSObject,是一 ...
- 巧用 Odoo act_window 的 flags实现一些个性化的视图控制
转自:http://www.khcloud.net:4082/?thread-58.htm 'flags': { 'sidebar': False, //是否显示sidebar区域(主要为action ...
- jq封装插件,简单dome
(function($) { $.fn.extend({ bold: function() { this.css({ fontWeight: "bold", color: 'red ...
- Find the Longest Word in a String-freecodecamp算法题目
Find the Longest Word in a String(找出最长单词) 要求 在句子中找出最长的单词,并返回它的长度 函数的返回值应该是一个数字. 思路 用.split(' ')将句子分隔 ...
- 【转】MFC消息映射详解(整理转载)
消息:主要指由用户操作而向应用程序发出的信息,也包括操作系统内部产生的消息.例如,单击鼠标左按钮,windows将产WM_LBUTTONDOWN消息,而释放鼠标左按钮将产生WM_LBUTTONUP消息 ...
- Neural Style论文笔记+源码解析
引言 前面在Ubuntu16.04+GTX1080配置TensorFlow并实现图像风格转换中介绍了TensorFlow的配置过程,以及运用TensorFlow实现图像风格转换,主要是使用了文章A N ...
- 转 Anaconda启动卡死的解决方案
https://blog.csdn.net/meng_zhi_xiang/article/details/83651676
- 拓展jQuery的serialize(),将form表单转化为json对象
jQuery 的 serialize() 方法经常会报 Uncaught TypeError: JSON.serializeObject is not a function 的错误, 原装的方法真的一 ...