栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

poj 2142 The Balance

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

poj 2142 The Balance

#include <iostream>#include <cstdio>#include <string.h>using namespace std;int gcd(int a,int b){if(b == 0)return a;return gcd(b,a%b);}void extend_Eulid(int a,int b,int &x,int &y){if(b == 0){  x = 1;  y = 0;  return;}extend_Eulid(b,a%b,x,y);int temp = x;x = y;y = temp - a / b * y;}int main(){int a,b,n;while(scanf("%d%d%d",&a,&b,&n)){  if(a + b + n == 0)  break;  int x,y;  int gcdab = gcd(a,b);  a /= gcdab;  b /= gcdab;  n /= gcdab;  extend_Eulid(a,b,x,y);  int vx = x * n;  vx = (vx %b + b) % b;  int vy = (n - a * vx) / b;  if(vy < 0) vy = -vy;  y = y * n;  y = (y % a + a) % a;  x = (n - b * y) / a;  if(x < 0) x = -x;  if(x + y > vx + vy){    x = vx; y = vy;  }  printf("%d %dn",x,y);}return 0;}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/370780.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号