poj1061 青蛙的约会 解二元一次不定方程
来源:互联网 发布:胖虾网络是培训机构吗 编辑:程序博客网 时间:2024/04/29 11:58
题目链接:http://poj.org/problem?id=1061
题目题目:在一个周长为L的圆圈上两只青蛙分别在s1,s2,速度(步长)分别为v1,v2,它们往同一风向走,问几步后相遇。
依然是扩展欧几里德,要注意的是这里数据范围很大,用64位并且用gcd处理一下,之前没处理就wa了好多次。
代码如下:
//============================================================================// Name : poj1061.cpp// Author : ssslpk// Version :// Copyright : Your copyright notice// Description : Hello World in C++, Ansi-style//============================================================================#include <iostream>#include<cmath>using namespace std;#define int64 long longint64 a,b,c,d,x,y;int64 gcd(int64 a,int64 b){return b? gcd(b,a%b):a;}int64 exgcd(int64 a,int64 b){if(b==0){x=1;y=0;return a;}d=exgcd(b,a%b);int64 xx=y,yy=x-a/b*y;x=xx;y=yy;return d;}int main() {int64 s1,s2,v1,v2,l;while(cin>>s1>>s2>>v1>>v2>>l){if(v1>v2){a=v1-v2;b=l;c=s2-s1;}else {a=v2-v1;b=l;c=s1-s2;}d=gcd(a,b);if(c % d){cout<<"Impossible"<<endl;continue;}a/=d;b/=d;c/=d;d=exgcd(a,b);x*=c;x=(x%b+b)%b;cout<<x<<endl;}return 0;}
- poj1061 青蛙的约会 解二元一次不定方程
- poj 1061 青蛙的约会 拓展欧几里德 解二元一次不定方程
- poj 1061 青蛙的约会 二元一次不定方程 http://poj.org/problem?id=1061
- 【poj1061】青蛙的约会 exgcd解同余方程
- poj1061青蛙的约会 同余方程
- poj 1061 青蛙的约会(扩展欧几里得解不定方程)
- poj1061青蛙的约会
- POJ1061 青蛙的约会
- Poj1061青蛙的约会
- poj1061 - 青蛙的约会
- poj1061-青蛙的约会
- poj1061青蛙的约会
- 青蛙的约会 POJ1061
- poj1061青蛙的约会
- poj1061 青蛙的约会
- poj1061 青蛙的约会
- poj1061-青蛙的约会
- POJ1061 青蛙的约会
- 大型网站的负载均衡器、db proxy和db
- 移动端touch事件获取clientX, clientY
- HDU 4302 - Holedox Eating
- win7 清理 ipconfig
- Ubuntu 中软件的安装、卸载以及查看的方法总结
- poj1061 青蛙的约会 解二元一次不定方程
- SQL查询语句
- Android对Linux内核的改动你知道多少?
- 对称子字符串的最大长度
- Ubuntu 12.04下安装QQ2012Beta3
- poj1338(Ugly Numbers)
- String.valueOf() 方法的使用
- net use 命令集合详解
- MTK6575点滴