概念: 首先,同余是数论中一个非常重要的内容,我们信息学中的数论无非就是围绕着素数和同余等转来转去,没有扎实的数学基本功,信息奥赛这条路也绝对走不远。 同余的定义:有两整数a,b,若它们除以整数m所得的余数相等,则称a与b对于模m同余或a同余于b模m 记作:$a\equiv b \pmod{m}$ ...
分类:
其他好文 时间:
2018-05-20 10:53:18
阅读次数:
193
问题描述 输入两个正整数,求其最大公约数和最小公倍数。 输入格式 每行输入两个正整数 a, b (1≤a,b≤104),空格隔开。 输出格式 输出两行,分别是 a, b 的最大公约数和最小公倍数。 代码 样例测试 2 3 1 6 辗转相除法 假设有两个数x和y,存在一个最大公约数z=(x,y),即 ...
分类:
其他好文 时间:
2018-05-18 21:16:52
阅读次数:
162
2301: [HAOI2011]Problem b Description 对于给出的n个询问,每次求有多少个数对(x,y),满足a≤x≤b,c≤y≤d,且gcd(x,y) = k,gcd(x,y)函数为x和y的最大公约数。 Input 第一行一个整数n,接下来n行每行五个整数,分别表示a、b、c、 ...
分类:
其他好文 时间:
2018-05-16 00:32:43
阅读次数:
138
BZOJ3930: [CQOI2015]选数 Description 我们知道,从区间[L,H](L和H为整数)中选取N个整数,总共有(H-L+1)^N种方案。 小z很好奇这样选出的数的最大公约数的规律,他决定对每种方案选出的N个整数都求一次最大公约数,以便进一步研究。 然而他很快发现工作量太大了, ...
分类:
其他好文 时间:
2018-05-13 23:11:50
阅读次数:
158
编程实现求两个正整数的最大公约数,要求计算最大公约数用函数fun(int a,int b)实现。 #include<stdio.h>void main(){ int n,a,b; int fun(int a,int b); printf("please input a,b:"); scanf("%d ...
分类:
编程语言 时间:
2018-05-13 19:57:08
阅读次数:
817
1.bool 类型 定义bool类型之前需要导入#include <stdbool.h> 2.逻辑运算 非! 或|| 和&& x>4 && x<6 !age<20 永远成立,!age=0或1 优先级顺序 ! && || 赋值运算等级最低 // 短路 逻辑运算时从左向右的,左边已经可以觉得结果了,右边 ...
分类:
编程语言 时间:
2018-05-13 15:10:37
阅读次数:
190
BZOJ2301: [HAOI2011]Problem b Description 对于给出的n个询问,每次求有多少个数对(x,y),满足a≤x≤b,c≤y≤d,且gcd(x,y) = k,gcd(x,y)函数为x和y的最大公约数。 Input 第一行一个整数n,接下来n行每行五个整数,分别表示a、 ...
分类:
其他好文 时间:
2018-05-13 11:55:55
阅读次数:
148
已知a、b求a与b的最大公因数与最小公倍数? 先说最大公因数 一种正常的算法是把a、b改写成多个素数的幂相乘。比如a=36和b=54,那么a=2^2*3^2,b=2^1*3^3。最大公因数就是取相同的素数的最小指数相乘,即2^1*3^2=18。亲爱的wyt理解这个就行了,下面可以不用看。 再来说说辗 ...
分类:
其他好文 时间:
2018-05-11 14:33:58
阅读次数:
185
#include using namespace std; //欧几里德算法求两个非负整数的最大公约数 int getDivisor(int a,int b) { int max,min; max = a; min = b; //两数中大数模小数,若结果不为0,则舍弃大数 ,把小数和模运算的结果分出... ...
分类:
编程语言 时间:
2018-05-10 23:42:27
阅读次数:
163
1 #include 2 #include 3 #include 4 5 using namespace std; 6 typedef long long LL; 7 8 LL Eular(LL m) 9 { 10 LL res = m; 11 for(LL i=2; i*i 1) 21 res -... ...
分类:
其他好文 时间:
2018-05-09 21:07:31
阅读次数:
132