Description
给你两个数x, y, 比较 x^y 和 y ^ x 的大小
Input
两个数 x, y, ( 1 <= x , y <= 1e9 )
Output
如果 x ^ y < y ^ x , 输出 “<”
如果 x ^ y > y ^ x , 输出 “>”
如果 x ^ y = y ^ x , 输出 “=”
思路:数据太大,不可能直接算出来结果进行比较,需要转换一下思路:
例如:x^y > y^x
则 ln x^y > ln y^x
则 ylnx > xlny 需要注意的是:需要用double型变量进行比较。
代码实现如下:
#include<stdio.h>
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int x,y;
scanf("%d %d",&x,&y);
if(x==y)
printf("=
");
else
{
if((double)(y*log(x))>(double)(x*log(y)))
printf(">
");
else
if((double)(y*log(x))<(double)(x*log(y)))
printf("<
");
else
printf("=
");
}
return 0;