def gcd(a, b):
if a == 0:
return 0, 1, b;
x, y, g = gcd(b % a, a)
return y - (b // a) * x, x, g
a, b, c = map(int, input().split())
c = -c
x, y, g = gcd(a, b)
if c % g != 0:
print("-1")
else:
x *= c // g
y *= c // g
print(x, " ", y)
#include <bits/stdc++.h>
#define deb(x) cout<<endl<<#x <<" = "<<x<<endl<<endl
using namespace std;
typedef long long ll;
typedef double dd;
ll gcd(ll a,ll b,ll &x,ll &y)
{
if(a==0){
x=0;
y=1;
return b;
}
ll x1,y1;
ll d=gcd(b%a,a,x1,y1);
x=y1-(b/a)*x1;
y=x1;
return d;
}
bool diophantine(ll a,ll b,ll c,ll &x,ll &y) // ax + by = c the first answer in x and y
{
ll x0,y0;
ll d=gcd(a,b,x0,y0);
if(c%d!=0) return false;
x=x0*(c/d);
y=y0*(c/d);
return true;
}
int main()
{
ll a,b,c; cin>>a>>b>>c;
ll x,y;
bool ok=diophantine(a,b,-c,x,y);
if(ok) cout<<x<<' '<<y<<endl;
else cout<<-1<<endl;
}
742A - Arpa’s hard exam and Mehrdad’s naive cheat | 1492A - Three swimmers |
1360E - Polygon | 1517D - Explorer Space |
1230B - Ania and Minimizing | 1201A - Important Exam |
676A - Nicholas and Permutation | 431A - Black Square |
474B - Worms | 987B - High School Become Human |
1223A - CME | 1658B - Marin and Anti-coprime Permutation |
14B - Young Photographer | 143A - Help Vasilisa the Wise 2 |
320A - Magic Numbers | 1658A - Marin and Photoshoot |
514A - Chewbaсca and Number | 382A - Ksenia and Pan Scales |
734B - Anton and Digits | 1080A - Petya and Origami |
1642D - Repetitions Decoding | 1440A - Buy the String |
1658F - Juju and Binary String | 478A - Initial Bet |
981A - Antipalindrome | 365A - Good Number |
1204B - Mislove Has Lost an Array | 1409D - Decrease the Sum of Digits |
1476E - Pattern Matching | 1107A - Digits Sequence Dividing |