PKU 1061 青蛙的约会
扩展欧几里德求模线性方程
感谢logic_space的指正
*/
#include <iostream>
#define abs(a) ((a)<0?-(a):(a))
using namespace std;
__int64 exGCD(__int64 a, __int64 b, __int64 &x, __int64 &y)
{
if (b == 0)
{
x = 1;
y = 0;
return a;
}
__int64 r = exGCD(b, a%b, x, y);
__int64 t = x;
x = y;
y = t - a / b * y;
return r;
}
bool linear_equation(__int64 a, __int64 b, __int64 c, __int64 &x, __int64 &y)
{
__int64 n = exGCD(a, b, x, y);
if (c % n) return false;
__int64 k = c / n, t = abs(b/n);
x *= k;
y *= k;
x = (x % t + t) % t;
return true;
}
int main()
{
__int64 x, y, m, n, l;
__int64 ans, tmp;
scanf("%I64d %I64d %I64d %I64d %I64d", &x, &y, &m, &n, &l);
if (m == n)
{
printf("Impossible\n");
return 0;
}
if (!linear_equation(n-m, l, x-y, ans, tmp))//(n-m) * ans + l * tmp = x-y
printf("Impossible\n");
else
printf("%I64d\n", ans);
return 0;
}
转载于:https://www.cnblogs.com/lotus3x/archive/2008/07/05/1236713.html
PKU 1061 青蛙的约会相关推荐
- [1061]青蛙的约会
http://acm.pku.edu.cn/JudgeOnline/problem?id=1061 青蛙的约会 Time Limit: 1000MS Memory Limit: 10000K Tota ...
- 集训笔记---扩展欧几里德算法(POJ NO.1061 青蛙的约会 有点烦人小跳蛙gcd)
又在搬砖,本来以为这是一个追及问题,后来发现数据好像并不是那么个意思,后来把方程列出来,经过一个去模的操作,我们其实可以找到一点线索,那就是,一个经过变形的二元一次方程,那么在这种情况下,就可以利用扩 ...
- POJ 1061青蛙的约会题解
POJ 1061青蛙的约会题解 网上似乎有不少此题的解法.我这个post和其他人的相比主要时想说下面几点. 1. 给出一个试图不死记硬背公式的思路; 2. 谈谈暴力解为什么看起来这么诱人,却无法通过; ...
- POJ 1061 青蛙的约会(扩展欧几里得)
青蛙的约会 Time Limit: 1000MS Memory Lim ...
- 数学--数论--POJ 1061青蛙的约会 (扩展欧几里得算法)
青蛙的约会 两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面.它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止.可是它们出发之前忘记了一件很重要的事情,既没有问 ...
- poj 1061青蛙的约会
青蛙的约会 两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面.它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止.可是它们出发之前忘记了一件很重要的事情,既没有问 ...
- POJ 1061 青蛙的约会 (扩展欧几里得)
青蛙的约会 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 97673 Accepted: 18409 Descripti ...
- 同余方程 ax≡1(mod b) POJ 1061 青蛙的约会
题目:求 ax%b=c ax\%b=c最小正整数x解,题目中的 c c=1. 先感谢两位大犇ngncmh和笑巧. 对于一般的问题,我们通常有两种做法: 1)1) Baby Step Giant Ste ...
- POJ 1061 青蛙的约会(扩展欧几里德)
题目链接:http://poj.org/problem?id=1061 Description 两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面.它们很高兴地发现它们住在同一条纬度线上,于 ...
最新文章
- curl 慢 不稳定_慢病毒包装步骤及注意事项
- python3安装包是说解压数据出错怎么办_无法修复“zipimport.zipimporter错误:无法解压缩数据;键入python3.6时zlib不可用获取pip.py...
- python自动化办公入门书籍-用Python自动办公,做职场高手 | 「讲文兄博客」
- redis的持久化(RDBAOF的区别)
- mac 安装appium
- PHP视频教程下载(PHP100系列视频教程)
- 13G311-1 混凝土结构加固构造 免费下载
- 笔记本电脑系统怎么重装,笔记本重装系统
- tomcat日志配置(停止日志或修改日志路径)
- html自动写对联,html中的对联代码
- 传智教育|如何转行互联网高薪岗位之一的软件测试?(附软件测试学习路线图)
- 帆软报表参数传给网络报表_报表开发工具FineReport的使用: 程序网络报表
- torch.nn到底是什么?(精简版)
- 计算机 审计追踪功能,第 讲 审计追踪技术与Windows安全审计功能
- 阿里云telnet 3306端口失败
- iOS开发之集成支付宝
- 《算法笔记》第4章常用技巧及排序算法
- JavaScript jq 三位分节法 input输入数字时每3位使用逗号隔开
- 七、Redis集群搭建
- VBS 入门交互实战