HDU 2669 Romantic(扩展欧几里德)

原创 2016年05月31日 01:14:51

题目链接:
HDU 2669 Romantic
题意:
求X*a + Y*b = 1最小非负整数解x和相应的y.
分析:
扩展欧几里德求出来基础解后稍微处理下就好了。

#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
#include <algorithm>
#include <climits>
#include <cmath>
#include <ctime>
#include <cassert>
#define IOS ios_base::sync_with_stdio(0); cin.tie(0);
using namespace std;
typedef long long ll;

ll ex_gcd(ll a, ll b, ll& x, ll& y)
{
    if(b == 0){
        x = 1, y = 0;
        return a;
    }
    ll d = ex_gcd(b, a % b, y, x);
    y -= a / b * x;
    return d;
}

int main()
{
    ll a, b, x, y, d;
    while(~scanf("%lld%lld", &a, &b)){
        d = ex_gcd(a, b, x, y);
        if(1 % d) printf("sorry\n");
        else {
            ll extra = 0;
            if(x < 0) extra = 1;
            ll t = x / b - extra;
            printf("%lld %lld\n", x - t * b, y + t * a);
        }
    }
    return 0;
}
版权声明:缥缈玉京人,想语然、京兆眉妩。

HDU 2669 Romantic (扩展欧几里得定理)

转载请注明出处:忆梦http://blog.csdn.net/yimeng2013/article/details/11822115 题目链接:http://acm.hdu.edu.cn/sho...
  • fjy4328286
  • fjy4328286
  • 2013年09月19日 00:34
  • 1325

hdu2669 Romantic(扩展欧几里得入门)

题目:http://acm.hdu.edu.cn/showproblem.php?pid=2669 题意:balabala一大堆,其实就是要告诉你,有一个公式是ax+by=1,给你a与b的值让你求解...
  • qq_29980371
  • qq_29980371
  • 2017年04月19日 19:22
  • 251

HDU 2669 Romantic(扩展欧几里德)

HDU 2669 Romantic(扩展欧几里德)
  • u012860063
  • u012860063
  • 2014年10月03日 21:50
  • 1254

hdu 2669 Romantic 扩展欧几里德

DescriptionThe Sky is Sprite. The Birds is Fly in the Sky. The Wind is Wonderful. Blew Throw t...
  • wb129945130
  • wb129945130
  • 2015年08月22日 12:37
  • 107

HDU 2669 Romantic(扩展欧几里德裸题)

裸的扩展欧几里德解不定方程,话不多说,看代码中间#include #include using namespace std; int x, y, c, r; int exgcd(int a, int...
  • look_poet_of_water
  • look_poet_of_water
  • 2017年08月29日 17:15
  • 84

HDU - 2669 Romantic (扩展欧几里德定理)

The Sky is Sprite. The Birds is Fly in the Sky. The Wind is Wonderful. Blew Throw the Trees Tree...
  • hyesuixin
  • hyesuixin
  • 2017年08月15日 21:03
  • 63

HDOJ 2669 Romantic (扩展欧几里德)

~~~题目链接~~~ 思路:扩展欧几里德,通过扩展欧几里德算法求出X与Y, 它的任意解为(X+K*B', Y-KA') A' = A/gcd(a,b) B' = B/gcd(a,b) ...
  • ulquiorra0cifer
  • ulquiorra0cifer
  • 2012年08月03日 17:28
  • 431

hdu 2669 Romantic 扩展欧几里得

链接:戳这里 Romantic Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Jav...
  • libin66
  • libin66
  • 2016年04月24日 15:19
  • 198

扩展欧几里得 Romantic (HDU - 2669)

这个题,废话一大堆,不过,题意还是很鲜明的。 如果你只是用扩展欧几里得,可能会wrong 好多次,我就是血淋淋的教训。 需要加 while(x        x=x+b/r;        ...
  • henuyl
  • henuyl
  • 2017年08月04日 09:40
  • 58

hdu 2669 Romantic

http://acm.hdu.edu.cn/showproblem.php?pid=2669 这就是简单的扩展欧几里得算法,求x 的最小正整数解#include #include using n...
  • qingshui23
  • qingshui23
  • 2015年05月31日 11:20
  • 337
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:HDU 2669 Romantic(扩展欧几里德)
举报原因:
原因补充:

(最多只允许输入30个字)