2019牛客暑期第一场 J Fraction Comparision(大数转换)

本文介绍了一种使用假分数思想比较四个超大数中x/a与y/b大小的方法。通过先比较整数部分再比较分数部分,解决了大数超出C++默认类型范围的问题。示例代码清晰展示了比较逻辑。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题意

   给出4个超大数,比较x/a 和 y/b大小

题解

   刚开始过的是用Python写的,不用任何处理

   c++:大数会超出范围,假分数的思想,先比较整数部分大小,在比较分数部分大小

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main(){
	ll x, a, y, b;
   while(cin >> x >> a >> y >> b){
   	    if(x / a == y / b && (x % a)*b == (y % b)*a){
   		    cout << "=" << endl; 
	    }
	    else if(x / a < y / b || (x / a == y / b && (x % a)*b < (y % b)*a)){
		    cout << "<" << endl;
	    }
	    else{
		    cout << ">" << endl;
	    }
	}
   return 0;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值