目录
-
循环数比较
题目描述:对于任意两个正整数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".
示例:
输入:
1010 3 101010 2
输出:
Equal
解题代码一(自己,凉码):
#include<iostream>
using namespace std;
int main(){
int x1,x2, k1, k2;
cin >> x1 >> k1 >> x2 >> k2;
long long res1 = 0;
long long res2 = 0;
int temp = 1;
int count1 = 1;
int count2 = 1;
//求x1的位数
while(temp){
temp = x1/10;
count1 = count1 * 10;
}
//求x2的位数
temp = 1;
while(temp){
temp = x2/10;
count2 = count2 * 10;
}
while(k1 != 0){
k1 = k1 - 1;
res1 = res1*count1 + x1;
}