na+mb与gcd】的更多相关文章

蒜头君和花椰妹在玩一个游戏,他们在地上将 nn 颗石子排成一排,编号为 11 到 nn.开始时,蒜头君随机取出了 22 颗石子扔掉,假设蒜头君取出的 22 颗石子的编号为 aa, bb.游戏规则如下,蒜头君和花椰妹 22 人轮流取石子,每次取石子,假设某人取出的石子编号为 ii,那么必须要找到一对 jj, kk 满足 i=j-ki=j−k 或者 i=j+ki=j+k ,并且编号为 jj,kk 的石子已经被取出了,如果谁先不能取石子了,则视为输了.蒜头君比较绅士,让花椰妹先手. 输入格式 第一行输…
题意: 给出一个n行m列的点阵,求共有多少条非水平非竖直线至少经过其中两点. 分析: 首先说紫书上的思路,编程较简单且容易理解.由于对称性,所以只统计“\”这种线型的,最后乘2即是答案. 枚举斜线包围盒的大小,如果盒子的长宽ab互质,则是可以的.这种盒子共有(m-a)(n-b)个,但要减去其中重复的.如果有一个长宽为2a和2b的大盒子,则计数右下角的小盒子的同时,左上角的小盒子会重复,所以要减去重复的盒子的个数c = max(0, m-2a) * max(0, n-2b) 最后gcd(a, b)…
题意说的非常清楚,即求满足gcd(n-a, n)*gcd(n-b, n) = n^k的(a, b)的不同对数.显然gcd(n-a, n)<=n, gcd(n-b, n)<=n.因此当n不为1时,当k>2时,不存在满足条件的(a,b).而当k=2时,仅存在(n, n)满足条件.因此仅剩n=1以及k=1需要单独讨论:当n = 1时,无论k为何值,均有且仅有(1,1)满足条件,此时结果为1:当k = 1时,即gcd(n-a, n)*gcd(n-b, n) = n,则令gcd(n-a, n) =…
证:$a > b$ 且 $gcd(a,b)=1$,有 $gcd(a^n-b^n, a^m-b^m) = a^{gcd(n, m)} - b^{gcd(n,m)}$. 证明: 假设 $n > m$,$r = n \% m$. 根据辗转相除法, $a^n - b^n = (a^m-b^m)(a^{n-m} + a^{n-2m}b^m + ...+) + a^rb^{n-r} - b^n$, $gcd(a^n-b^n, a^m-b^m) = gcd(a^m-b^m, a^rb^{n-r}-b^n)…
首先蒟蒻是在大佬的博客里学习的代码,代码风格多有相似之处,大佬博客https://www.cnblogs.com/lMonster81/p/10433902.html 最大公因数那,顾名思义就是两个数共有的因数里最大的那个,辗转相除求最大公因数所用的原理就是两个数的最大公因数等于这两个数中[较小的那个数]和[两数之差]的最大公因数,证明如下: 描述:关于辗转相除法的具体实现在这里就不具体说明了,本文要记录的是辗转相除法应用于求最大公约数的算法证明过程. 假设: 求m和n的最大公约数. a,b分别…
链接: https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=4139 题意: 有一个n行m列(1≤n,m≤300)的点阵,问:一共有多少条非水平非竖直的直线至少穿过其中两个点? 分析: 不难发现两个方向是对称的,所以只统计“\”型的,然后乘以2.方法是枚举直线的包围盒大小a*b,然后计算出包围盒可以放的位置.首先,当gcd(a,b)>1时…
望得分:100+100+100 实际得分:100+100+100 Problem 1 晨跑(running.cpp/c/pas)[题目描述]为了响应学校的号召,模范好学生王队长决定晨跑.不过由于种种原因,每天都早起去跑步不太现实,所以王队长决定每 a 天晨跑一次.换句话说,假如王队长某天早起去跑了步,之后他会休息 a-1 天,然后第 a 天继续去晨跑,并以此类推.王队长的好朋友小钦和小针深受王队长坚持锻炼的鼓舞, 并决定自己也要坚持晨跑.小钦决定每 b 天早起跑步一次,而小针决定每 c 天早起跑…
Problem A. divisor 发现x为k可表达一定可以表示成这种形式,如k=3,x=(1/3+1/2+1/6)x. 于是可以搜索k(k<=7)个1/i加起来等于1的情况,如果一个数是这些i的lcm的倍数这个数就是k可表达的. std并没有给出它的搜索程序,我的搜索写得很不优秀,所以我写搜索写了很久. 一是用double会炸精度,于是我手写了分数类. 然后是搜的时候按从大到小搜,每次会有一个上限. 这样爆搜的话可以搜出6的,要搜出7的的话,因为实际上搜的是lcm,记录一下出现过的lcm,如…
数论还是有很多没学完 只是小小的总结 一.同余定理 1.反身性:\(a\equiv a (mod m)\) 2.对称性:若\(a\equiv b(mod m)\),则\(b\equiv a (mod m)\) 3.传递性:若\(a\equiv b(mod m)\),\(b\equiv c(mod m)\),则\(a\equiv c(mod m)\) 4.同余式相加:若\(a\equiv b(mod m)\),\(c\equiv d(mod m)\),则\(ac\equiv bd(mod m)\)…
夜莺与玫瑰 题解 联赛$T1$莫比乌斯$\%\%\%$ $dead$  $line$是直线 首先横竖就是$n+m$这比较显然 枚举方向向量 首先我们枚举方向向量时只枚举右下方向,显然贡献$*2$就是所有斜着的直线 $i,j$表示当自己向右$i$个单位长度,向下$j$单位长度 我们相同斜率下只算最短的线贡献,(因为其他长度下方案数都包含在最短里面了) 我们方向向量$i$,$j$的$gcd(i,j)==1$时我们枚举的才是当前斜率最短长度, 然后考虑贡献 考虑容斥,先算出来当前长度下所有线段再减去重…