今天接到scy的压缩包,开始做数论专题。那今天就总结一下拓展欧几里得求解不定方程和同余方程组。 首先我们复习一下欧几里得算法: 1 int gcd(int a,int b){ 2 if(b==0) return a; 3 return gcd(b,a%b);4 } 拓展欧几里得算法: 推导过程: 给
分类:
其他好文 时间:
2016-02-01 23:51:53
阅读次数:
281
I have some (say, n) marbles (small glass balls) and I am going to buy some boxes to store them. Theboxes are of two types:T ype 1: each box costs c1 ...
分类:
其他好文 时间:
2016-01-06 20:12:31
阅读次数:
293
大神orz(具体参考请点这)我根据个人感觉弄了一下自己的思路ZOJ 3609 :http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4712求最小逆元,坑点就是对1的特判/*******************************...
分类:
其他好文 时间:
2015-08-30 00:45:22
阅读次数:
200
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1407题意:有n个野人,野人各自住在第c[i]个山洞中(山洞成环状),每年向前走p[i]个山洞,到这个山洞住下来。每个野人的寿命为l[i],问至少需要多少个山洞,才能让野人在有生之年永远不住在...
分类:
其他好文 时间:
2015-08-27 18:26:41
阅读次数:
148
2只青蛙分别站在x和y处,每次分别能跳m和n米,维度线总长L,求跳了几次后会碰面,若永远不能碰面,则输出-1....
分类:
其他好文 时间:
2015-08-18 01:22:05
阅读次数:
117
欧几里得& 拓展欧几里得(Euclid & Extend-Euclid)
欧几里得算法(Euclid)
背景:
欧几里德算法又称辗转相除法,用于计算两个正整数a,b的最大公约数。
——百度百科
代码:
递推的代码是相当的简洁:
….
分析:
方法说了是辗转相除法,自然没有什么好介绍的了。。
Fresh肯定会觉得这样递归下去会不会爆栈?实际上在这里是不会爆栈的,因为递归的层数是...
分类:
编程语言 时间:
2015-08-16 07:09:01
阅读次数:
158
青蛙的约会
Time Limit: 1000MS
Memory Limit: 10000K
Total Submissions: 97776
Accepted: 18462
链接:http://poj.org/problem?id=1061
Description
两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面。它...
分类:
其他好文 时间:
2015-08-16 07:08:26
阅读次数:
125
妈妈呀我会写拓展欧几里得了。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #define PAU putchar(' ') 8 #define ENT putchar('\n') 9 using namesp...
分类:
其他好文 时间:
2015-07-10 12:47:53
阅读次数:
138
547A - Mike and FrogSolution: 先求出两种变化的第一次和第二次变化到目标的时间。 对这四个时间的具体情况需要一些特判 。 然后直接从1到2*N枚举其中一个时间的倍数,然后输出第一个满足要求的答案。 或者求出循环节后用拓展欧几里得求出最小解。547B - Mike ...
分类:
其他好文 时间:
2015-06-14 21:17:39
阅读次数:
165
题目链接:Codeforces 492E Vanya and Field
通过拓展欧几里得算法求出每个位置在移动过程中,在x为0时,y的位置。统计相应y坐标最多的即为答案。
#include
#include
#include
using namespace std;
const int maxn = 1e6 + 5;
const int maxm = 1e5 + 5;
typedef...
分类:
其他好文 时间:
2015-04-16 10:21:14
阅读次数:
119