Chinaunix首页 | 论坛 | 博客
  • 博客访问: 36835
  • 博文数量: 13
  • 博客积分: 933
  • 博客等级: 军士长
  • 技术积分: 140
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-11 21:01
文章分类

全部博文(13)

文章存档

2011年(1)

2010年(12)

最近访客

分类:

2010-03-12 21:00:08

//VC 6.0不支持long long类型,这个需要留意
#include
#include
#include
using namespace std;
long long tx, py, c;
void extend_euild(int a, int b)
{
    if(b == 0)
    {
        tx = 1;
        py = 0;
        c = a;
    }
    else
    {
        extend_euild(b, a%b);
        int temp = tx;
        tx = py;
        py = temp - a/b*py;
    }
}
int main()
{
    int ok = 0, d, a, b;
    long long x, y, m, n, l;
    cin >> x >> y >> m >> n >> l;
 x%=l;
 y%=l;
    if(n == m)
        ok = 1;
    else{
        a = n-m;
        d = x-y;
        b = l;
        extend_euild(a, b);
        if(d % c !=0)
            ok = 1;
    }
    if(ok)
        cout << "Impossible" << endl;
    else
    {
        b = b / c;
        d = d / c;
        long long v = d * tx;
        cout << (v%b+b)%b << endl;
    }
    return 0;
}
阅读(624) | 评论(0) | 转发(0) |
0

上一篇:POJ 1014

下一篇:POJ 2407

给主人留下些什么吧!~~