链接:https://ac.nowcoder.com/acm/contest/881/J
来源:牛客网
题目描述
Bobo has two fractions
xaxa and ybyb. He wants to compare them. Find the result.
输入描述:
The input consists of several test cases and is terminated by end-of-file.
Each test case contains four integers x, a, y, b.
* 0≤x,y≤10180≤x,y≤1018
* 1≤a,b≤1091≤a,b≤109
* There are at most 105105 test cases.
输出描述:
For each test case, print `=` if xa=ybxa=yb. Print `<` if xa<ybxa<yb. Print `>` otherwise.
示例1
输出
复制< > =这是答案错误的
到现在都不知道自己哪里错了!!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
#include<iostream>
#include<string.h>
#include<cstdio>
const
int
Maxn=1e+9;
using
namespace
std;
int
main(){
long
long
x,a,y,b;
while
(
scanf
(
"%lld %lld %lld %lld"
,&x,&a,&y,&b)!=EOF){
long
long
m=((x%Maxn)*(b%Maxn))%Maxn;
long
long
n=((y%Maxn)*(a%Maxn))%Maxn;
if
(m<n)cout<<
"<"
<<endl;
else
if
(m>n)cout<<
">"
<<endl;
else
if
(m==n)cout<<
"="
<<endl;
}
return
0;
}
|
这个是正确的,还请看到的大佬指点一下我这个菜鸡,真不知道哪里错了!!(欲哭无泪),非常感谢
#include<iostream>
#include<string.h>
#include<cstdio>
using namespace std;
int main(){
long long x,a,y,b;
while(scanf("%lld %lld %lld %lld",&x,&a,&y,&b)!=EOF){
if(x*b-y*a<0)cout<<"<"<<endl;
else if(x*b>y*a)cout<<">"<<endl;
else if(x*b-y*a==0)cout<<"="<<endl;
}
return 0;
}