1. 程式人生 > >C. Line(擴充套件歐幾里得求不定方程的解)

C. Line(擴充套件歐幾里得求不定方程的解)

time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output

A line on the plane is described by an equation Ax + By + C = 0. You are to find any point on this line, whose coordinates are integer numbers from  - 5·1018 to 5·1018 inclusive, or to find out that such points do not exist.

Input

The first line contains three integers AB and C ( - 2·109 ≤ A, B

, C ≤ 2·109) — corresponding coefficients of the line equation. It is guaranteed that A2 + B2 > 0.

Output

If the required point exists, output its coordinates, otherwise output -1.

Examples input
2 5 3
output
6 -3
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include <algorithm>
using namespace std;

typedef long long int ll;

ll ext_gcd(ll a,ll b,ll& s,ll& t){
	
	if(b==0){
		s = 1;
		t = 0;
		return a;
	}
	ll ans = ext_gcd(b,a%b,s,t);
	ll tmp = s;
	s = t;
	t = tmp-a/b*s;
	
	return ans;
}


int main(){
	
	
	ll a,b,c;
	scanf("%I64d %I64d %I64d",&a,&b,&c);
	ll s=0,t=0;
	ll d = ext_gcd(a,b,s,t); 
	if(c%d!=0)
		printf("-1\n");
	else
		printf("%I64d %I64d\n",-1*c/d*s,-1*c/d*t);
	return 0;
}


相關推薦

C. Line擴充套件不定方程

time limit per test 1 second memory limit per test 256 megabytes input standard input outp

青蛙的約會擴充套件演算法+不定方程求解

1.折磨了我好久,不過大概是懂了。 2.題目: 兩隻青蛙在網上相識了,它們聊得很開心,於是覺得很有必要見一面。它們很高興地發現它們住在同一條緯度線上,於是它們約定各自朝西跳,直到碰面

ZOJ ~ 3593 ~ One Person Game 擴充套件不定方程

題意 你要從A走到B,你每次可以走a步,b步,a+b步問最小需要走多少步?無法到達輸出 -1。 題解 先不考慮a+b步的情況,那麼我們要求解的就是:,如果,證明無解。 假設原方程一組解為x0,y0,那麼通解(x,y)為:,。 其實也就是兩條直線:, 取一條平行於

POJ ~ 2115 ~ C Looooops 擴充套件

題解 設答案為x,由題意得,同餘方程 => 。 然後求得最小的非負整數解 x 就是答案。 //#include<bits/stdc++.h> #include<iost

ZOJ ~ 3609 ~ Modular Inverse 擴充套件,乘法逆元

題意 求a*x ≡ 1(mod m),求最小的正整數 x ,如果沒有解輸出 “Not Exist”。 思路 求乘法逆元。a*x ≡ 1(mod m)轉化為 ,求最小的正!整數 x 。 #

poj 1061青蛙的約會擴充套件+同餘方程

兩隻青蛙在網上相識了,它們聊得很開心,於是覺得很有必要見一面。它們很高興地發現它們住在同一條緯度線上,於是它們約定各自朝西跳,直到碰面為止。可是它們出發之前忘記了一件很重要的事情,既沒有問清楚對方的特徵,也沒有約定見面的具體位置。不過青蛙們都是很樂觀的,它們覺得只要一直朝

數論擴充套件方程整數

A - Solutions to an Equation You have to find the number of solutions of the following equation: Ax + By + C = 0 Where A, B, C, x, y 

poj 1601(擴充套件不定方程的整數)

歐幾里德的原理:(轉)http://www.cnblogs.com/void/archive/2011/04/18/2020357.html 擴充套件歐幾里德演算法是用來在已知a, b求解一組p,q使得p * a+q * b = Gcd(p, q) (解一定存在,根據數論

擴充套件不定方程】 hdoj 2669

擴充套件歐幾里德求不定方程 hdoj 2669 題目連結:http://acm.hdu.edu.cn/showproblem.php?pid=2669 題目思路:赤裸裸的求不定方程 p = m *

51Nod 1119 機器人走方格 擴充套件+逆元+組合數

M * N的方格,一個機器人從左上走到右下,只能向右或向下走。有多少種不同的走法?由於方法數量可能很大,只需要輸出Mod 10^9 + 7的結果。 收起 輸入 第1行,2個數M,N,中間用空格隔開。(2 <= m,n <= 1000000) 輸出 輸出走法的數量 Mo

演算法複習——擴充套件演算法擴充套件,逆元,整除

①歐幾里得演算法 就是求gcd的有趣的輾轉相除法,不再贅述啦0v0 程式碼: int gcd(int a,int b) { if(b==0) return a; else return gcd(b,a%b); } ②擴充套件歐幾里得演算法 需要解決這樣的問題:兩個非0整數a,b

qdu 2017級納新題擴充套件

在你面前撒個嬌 哎呦喵喵喵喵喵 Description   我們一起學貓叫 一起喵喵喵喵喵 在你面前撒個嬌 哎呦喵喵喵喵喵 我的心臟砰砰跳 迷戀上你的壞笑 你不說愛我我就喵喵喵 每當xjy和hqy一起唱起這首歌時,就會吸引好多貓群來聽歌,這天他們又吸

POJ-1061-青蛙的約會 擴充套件演算法

原題連結: http://poj.org/problem?id=1061 兩隻青蛙在網上相識了,它們聊得很開心,於是覺得很有必要見一面。它們很高興地發現它們住在同一條緯度線上,於是它們約定各自朝西跳,直到碰面為止。可是它們出發之前忘記了一件很重要的事情,既沒有問清楚對方的特徵,也沒有約定

HDU-2669-Romantic 擴充套件演算法

原題連結: http://acm.hdu.edu.cn/showproblem.php?pid=2669 The Sky is Sprite. The Birds is Fly in the Sky. The Wind is Wonderful. Blew Throw the Trees

POJ-2142-The Balance 擴充套件演算法

原題連結: Ms. Iyo Kiffa-Australis has a balance and only two kinds of weights to measure a dose of medicine. For example, to measure 200mg of aspiri

POJ ~ 1061 ~ 青蛙的約會 擴充套件

題解 假設答案為a,其實就是求解:,化為。 對應到中,a = m-n,b = L, c = y-x。x為a,y為k。要求最小的非負整數x。 假設的一組解為(x0,y0),那麼通解為 所以最小

逆元的種求法擴充套件,費馬小定理或尤拉定理,特例,打表等

乘法逆元 對於縮系中的元素,每個數a均有唯一的與之對應的乘法逆元x,使得ax≡1(mod n) 一個數有逆元的充分必要條件是gcd(a,n)=1,此時逆元唯一存在 逆元的含義:模n意義下,1個數a

組合數取模楊輝三角打表 & 逆元擴充套件、費馬小定理、尤拉定理、線性求法 & Lucas

    在acm競賽中,組合數取模的題目還是經常會見到的,所以這是有必要掌握的一個演算法。我本人就因為這個東西而被坑了很多次了= =之前的部落格也都扯過了,就不多說了,下面進入正題。 (1)楊輝三角求組合數     楊輝三角這個東西應該都不陌生,三角的兩邊始終為一,之後向

一次同餘式的求解擴充套件

大佬的解釋 題目連結 一次同餘式a*x%n=b的解的存在條件是b整除gcd(a,n)。 #include<cstdio> #include<cstring> #includ

各種密碼學演算法的GUI程式設計實現DES、AES、Present、擴充套件演算法、素性檢測

encryption-algorithm 各種密碼學演算法的 C# GUI程式設計實現,包含: DES AES Present 擴充套件歐幾里得演算法 素性檢測 最終的結果 DES加密 DES解密