摘要:
扩展欧几里德算法的应用:1.求二元一次方程 ax + by = c 的整数解 定理:对于整数方程ax + by = c,若c mod Gcd(a, b) == 0,则该方程存在整数解,否则不存在整数解。 设d = gcd(a,b), a' = a/d, b' = b/d, 则方程变形为 d(a'x 阅读全文
摘要:
用法:用于除法取模 思路:扩欧 要求:b、p互质 设k为b的乘法逆元: 则在求解除法取模问题时: 有(a/b)%p =>(a*k)%p 当b很大时,用除法会出现精度问题。。so 乘法逆元: 如果b*k ≡ 1 (mod p) 则称k是b关于p的乘法逆元 我们可以通过求 b 关于 p 的乘法逆元 k, 阅读全文
摘要:
数论之扩欧 QB_UDG 2016年11月8日11:34:40 原理: 设 a*x1+b*y1=gcd(a, b); 设 b*x2+(a%b)*y2=gcd(b, a%b); 由欧几里德定理知: gcd(a, b)==gcd(b, a%b) 所以==>a*x1+b*y1=b*x2+(a%b)*y2 阅读全文
摘要:
数论复习之费马与欧拉 QB_UDG 2016年11月8日10:16:18 1.费马小定理 Fermat Theory 如果 p是素数,且a与p互质,即gcd(a,p)=1 那么(a^p-1) ≡ 1 (mod p) 应用: 求乘法逆元 乘法逆元: (x*x’)≡ 1 (mod p) 称x’为x模p的 阅读全文
摘要:
思路: 解决这道题需要用到线段树,通俗的说,每个父节点就是两个字结点上的函数套起来,而题目中的要求可看做单点修改和区间查询 于是问题来了,怎么建树呢。。拿出纸和笔,我们来找规律: f1(x) = k[1]*x+b[1] f2(f1(x)) = k[2]*(k[1]*x+b[1])+b[2] = k[ 阅读全文
摘要:
题目描述 给出起点和终点的坐标及接下来T个时刻的风向(东南西北),每次可以选择顺风偏移1个单位或者停在原地。求到达终点的最少时间。 如果无法偏移至终点,输出“-1”。 输入输出格式 输入格式: 第一行两个正整数x1,y1,表示小明所在位置。 第二行两个正整数x2,y2,表示小明想去的位置。 第三行一 阅读全文
摘要:
题目描述 学校里有一个水房,水房里一共装有 m 个龙头可供同学们打开水,每个龙头每秒钟的 供水量相等,均为 1。 现在有 n 名同学准备接水,他们的初始接水顺序已经确定。将这些同学按接水顺序从 1到 n 编号,i 号同学的接水量为 wi。接水开始时,1 到 m 号同学各占一个水龙头,并同时打开水龙头 阅读全文
摘要:
【题目描述】fqk 退役后开始补习文化课啦, 于是他打开了生物必修一开始复习蛋白质,他回想起了氨基酸通过脱水缩合生成肽键,具体来说,一个氨基和一个羧基会脱去一个水变成一个肽键。于是他脑洞大开,给你出了这样一道题:fqk 将给你 6 种氨基酸和 m 个脱水缩合的规则,氨基酸用'a ' , ' b' , 阅读全文
摘要:
背单词【题目描述】fqk 退役后开始补习文化课啦, 于是他打开了英语必修一开始背单词。 看着满篇的单词非常头疼, 而每次按照相同的顺序背效果并不好,于是 fqk 想了一种背单词的好方法!他把单词抄写到一个 n 行 m 列的表格里,然后每天背一行或者背一列。他的复习计划一共有 k 天,在k 天后, f 阅读全文
摘要:
题目描述 单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母,要求出以这个字母开头的最长的“龙”(每个单词都最多在“龙”中出现两次),在两个单词相连时,其重合部分合为一部分,例如 beast和astonish,如果接成一条龙则变为beastonish,另外相 阅读全文
摘要:
字符数组的读入 字符数组的读入有两种方式,单字符赋值和字符串赋值 1.单字符赋值 单字符赋值,可通过数组下标方式或指针方式,引用数组元素,进行赋值。 2.字符串赋值 可用头文件cstring中的字符串操作函数进行赋值 注意:数组在定义时,可以同时进行初始化,但定义完成后,就不能按初始化的形式对其赋值 阅读全文