2018校招真題編程題(愛奇藝)循環數比較

題目描述
對於任意兩個正整數x和k,我們定義repeat(x, k)爲將x重複寫k次形成的數,例如repeat(1234, 3) = 123412341234,repeat(20,2) = 2020.
牛牛現在給出4個整數x1, k1, x2, k2, 其中v1 = (x1, k1), v2 = (x2, k2),請你來比較v1和v2的大小。
輸入描述:
輸入包括一行,一行中有4個正整數x1, k1, x2, k2(1 ≤ x1,x2 ≤ 10^9, 1 ≤ k1,k2 ≤ 50),以空格分割
輸出描述:
如果v1小於v2輸出"Less",v1等於v2輸出"Equal",v1大於v2輸出"Greater".
示例1
輸入
1010 3 101010 2
輸出
Equal

水題

package com.qiye;

import java.math.BigInteger;
import java.util.Scanner;

public class CircleNumCompare {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String s1 = scanner.next();
        int n = scanner.nextInt();
        String s2 = scanner.next();
        int m = scanner.nextInt();
        s1 = repeat(s1,n);
        s2 = repeat(s2,m);
        BigInteger bg1 = new BigInteger(s1);
       // System.out.println(bg1);
        BigInteger bg2 = new BigInteger(s2);
       // System.out.println(bg2);
        if(bg1.compareTo(bg2) > 0){
            System.out.println("Greater");
        }
        else if(bg1.compareTo(bg2)  == 0){
            System.out.println("Equal");
        }
        else{
            System.out.println("Less");
        }
    }
    public static String repeat(String s,int x){
        String sub = s;
        for(int i=0;i < x - 1;i ++){
            s +=sub;
        }
        return s;
    }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章