描写叙述

求关于x的同余方程ax ≡ 1 (mod b)的最小正整数解。

格式

输入格式

输入仅仅有一行,包括两个正整数a, b,用一个空格隔开。

输出格式

输出仅仅有一行,包括一个正整数x0。即最小正整数解。

输入数据保证一定有解。

例子1

例子输入1[复制]

3 10

例子输出1[复制]

7

限制

每一个測试点1s

提示

对于40%的数据,2 ≤b≤ 1,000; 

对于60%的数据,2 ≤b≤ 50,000,000; 

对于100%的数据,2 ≤a, b≤ 2,000,000,000。

分析:

解同余方程。比較水

欧几里德算法

program mod1;

var

a,b,x,y:longint;

procedure gcd(a,b:longint);

var t:longint;

begin

if b<>0

then gcd(b,a mod b)

else begin

x:=1;

y:=0;

exit;

end;

t:=x;

x:=y;

y:=t-(a div b)*y;

end;

begin

readln(a,b);

gcd(a,b);

//writeln(x,' ',y);

writeln(((x mod b)+b)mod b);

end.

代码二:

program mod2;

procedure oujilide(a,b:int64;var d,x,y:int64);





begin

  if b=0 then

  begin

  d:=a;

  x:=1;

  y:=0;

  end

  else

  begin

  oujilide(b,a mod b,d,y,x);

  y:=y-x*(a div b);end;

end;

var

  a,b,d,x,y:int64;

begin

  assign(input,'mod.in');

  reset(input);

  assign(output,'mod.out');

  rewrite(output);

  readln(a,b);

  oujilide(a,b,d,x,y);

  while x<0 do

  x:=x+b;

  writeln(x);

  close(input);

  close(output);

  end.

NOIP2012 同余方程 题解的更多相关文章

  1. 一本通1632【 例 2】[NOIP2012]同余方程

    1632:[ 例 2][NOIP2012]同余方程 时间限制: 1000 ms         内存限制: 524288 KB [题目描述] 求关于 x 的同余方程 ax≡1(mod b) 的最小正整 ...

  2. 1265. [NOIP2012] 同余方程

    1265. [NOIP2012] 同余方程 ★☆   输入文件:mod.in   输出文件:mod.out   简单对比 时间限制:1 s   内存限制:128 MB [题目描述] 求关于 x 的同余 ...

  3. 1632:【 例 2】[NOIP2012]同余方程

    #include<bits/stdc++.h> #define ll long long using namespace std; void Exgcd(ll a,ll b,ll & ...

  4. [NOIP2012] 同余方程(第三次考试大整理)

    1265. [NOIP2012] 同余方程 输入文件:mod.in   输出文件:mod.out   简单对比 时间限制:1 s   内存限制:128 MB [题目描述] 求关于 x 的同余方程 ax ...

  5. 【数学】【NOIp2012】同余方程 题解 以及 关于扩展欧几里得与同余方程

    什么是GCD? GCD是最大公约数的简称(当然理解为我们伟大的党也未尝不可).在开头,我们先下几个定义: ①a|b表示a能整除b(a是b的约数) ②a mod b表示a-[a/b]b([a/b]在Pa ...

  6. luoguP1082 同余方程 题解(NOIP2012)(数论)

    luoguP1082 同余方程 题目 #include<iostream> #include<cstdlib> #include<cstdio> #include& ...

  7. 【扩展欧几里得】NOIP2012同余方程

    题目描述 求关于 x 的同余方程 ax ≡ 1 (mod b)的最小正整数解. 输入输出格式 输入格式: 输入只有一行,包含两个正整数 a, b,用一个空格隔开. 输出格式: 输出只有一行,包含一个正 ...

  8. NOIP2012同余方程[exgcd]

    题目描述 求关于 x 的同余方程 ax ≡ 1 (mod b)的最小正整数解. 输入输出格式 输入格式: 输入只有一行,包含两个正整数 a, b,用一个空格隔开 输出格式: 输出只有一行,包含一个正整 ...

  9. NOIP2012同余方程

    描述 求关于 x的同余方程  ax ≡ 1(mod b) 的最小正整数解. 输入格式 输入文件 mod.in输入只有一行,包含两个正整数a,b,用一个空格隔开. 输出格式 输出文件 为 modmod  ...

随机推荐

  1. BZOJ3172 单词 Fail树

    题目大意:求一篇论文中每个单词分别在论文中出现多少次. 本题用AC自动机太慢,应该用Fail树将AC自动机中所有的Fail指针反向得到一个新树,这就是Fail树.对长度为x的字符串a和长度为y的字符串 ...

  2. ASP.NET Razor - C# and VB Code Syntax

    http://www.w3schools.com/aspnet/razor_syntax.asp Razor supports both C# (C sharp) and VB (Visual Bas ...

  3. 饭卡(hdoj--2546--背包)

    饭卡 Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submiss ...

  4. php简单测试slim框架的功能

    php简单测试slim框架的功能 监听主路径/ $app->get( '/', function () { $template = <<<EOT<!DOCTYPE htm ...

  5. BZOJ 1951 Lucas定理+CRT

    思路: 枚举约数 套个裸的Lucas+CRT就完了... //By SiriusRen #include <cmath> #include <cstdio> using nam ...

  6. Hadoop MapReduce编程 API入门系列之网页流量版本1(二十二)

    不多说,直接上代码. 对流量原始日志进行流量统计,将不同省份的用户统计结果输出到不同文件. 代码 package zhouls.bigdata.myMapReduce.flowsum; import ...

  7. Canvas实现环形进度条

    Canvas实现环形进度条 直接上代码: <canvas width="200" height="200" >60%</canvas> ...

  8. python3 常用模块详解

    这里是python3的一些常用模块的用法详解,大家可以在这里找到它们. Python3 循环语句 python中模块sys与os的一些常用方法 Python3字符串 详解 Python3之时间模块详述 ...

  9. 获取listview的高度代码

    public int getTotalHeightofListView(ListView listView) { ListAdapter mAdapter = (ListAdapter) listVi ...

  10. WEB笔记-1、HTML 标记与文档结构

    1.HTML 标记与文档结构   1.1 块级(block)和行内(inline)标签   块级标签 <h1>-<h6> : 6级标签,h1表示最重要(h1 不仅仅是最大最突出 ...