Eyad and Math(换底公式)

https://cn.vjudge.net/problem/Gym-101502H

Eyad was given a simple math problem, but since he is very bad at math he asked you to help him.

Given 4 numbers, abc, and d. Your task is to find whether ab is less than cd or not.

It is guaranteed that the two numbers above are never equal for the given input.

Input

The first line contains an integer T (1 ≤ T ≤ 105), where T is the number of test cases.

Then T lines follow, each line contains four integers abc, and d (1 ≤ a, b, c, d ≤ 109).

Output

For each test case, print a single line containing "<" (without quotes), if ab is less than cd. Otherwise, print ">" (without quotes).

Example

Input

2
9 2 5 3
3 4 4 3

Output

<
>

题意: 判断a^b与c^d的大小,(1 ≤ a,b,c,d ≤ 10^9)。

做法: 取对数,log(b)a^n = n*log(b)a。 

#include <iostream>
#include <cstdio>
#include <queue>
#include <cstring>
#include <cmath>
#include <algorithm>

using namespace std;

int main()
{
    int t;
    scanf("%d", &t);
    while(t--)
    {
        double a, b, c, d;
        scanf("%lf%lf%lf%lf", &a, &b, &c, &d);
        double n1 = b*log(a);
        double n2 = d*log(c);
        if(n1>=n2)
            printf(">\n");
        else
            printf("<\n");
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_42137874/article/details/82220542
今日推荐