A - High School: Become Human

Problem description

Year 2118. Androids are in mass production for decades now, and they do all the work for humans. But androids have to go to school to be able to solve creative tasks. Just like humans before.

It turns out that high school struggles are not gone. If someone is not like others, he is bullied. Vasya-8800 is an economy-class android which is produced by a little-known company. His design is not perfect, his characteristics also could be better. So he is bullied by other androids.

One of the popular pranks on Vasya is to force him to compare xy with yx. Other androids can do it in milliseconds while Vasya's memory is too small to store such big numbers.

Please help Vasya! Write a fast program to compare xywith  yx for Vasya, maybe then other androids will respect him.

Input

On the only line of input there are two integers xxand y (1x,y1091≤x,y≤109).

Output

If xy<yx, then print '<' (without quotes). If xy>yx, then print '>' (without quotes). If xy=yx, then print '=' (without quotes).

Examples

Input
5 8
Output
>
Input
10 3
Output
<
Input
6 6
Output
=

Note

In the first example 58=55555555=390625, and 85=88888=32768. So you should print '>'.

In the second example 103=1000<310=59049.

In the third example 66=46656=66.

解题思路:指数运算一般转换成对数来运算,但在比较大小(两个小数做差法)时要注意精度,否则很容易出错。

AC代码:

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 int main(){
 4     double x,y,m,n;
 5     cin>>x>>y;
 6     m=y*log10(x);
 7     n=x*log10(y);
 8     if(abs(m-n)<=1e-9)cout<<'='<<endl;
 9     else if(m-n>0)cout<<'>'<<endl;
10     else cout<<'<'<<endl;
11     return 0;
12 }

这题也可以直接用long double过,但还是一般采用上面的做法比较好=_=。

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 int main(){
 4     long double x,y,m,n;
 5     cin>>x>>y;
 6     m=y*log10(x);
 7     n=x*log10(y);
 8     if(m<n)cout<<'<'<<endl;
 9     else if(m>n)cout<<'>'<<endl;
10     else cout<<'='<<endl;
11     return 0;
12 }

猜你喜欢

转载自www.cnblogs.com/acgoto/p/9116872.html
今日推荐