A题:
题意大致为: 给你四个数 x1, p1, x2, p2, 比较x1后面加上p1个0 与 x2加上p2个0的大小 输出大小符号即可
分析题目:首先看数据 p <= 1e6 所以肯定是不能用暴力一直去 乘= 10做,ull都存不下, 所以就要想更简便的方法。
首先我们可以比较长度,我们记x 为 x1加上p1个0之后的长度,y 为 x2加上p2个0之后的长度,若长度不等即可马上比较,所以有
int ta = x1, tb = x2;
while (ta)
{
x ++;
ta /= 10;
}
while (tb)
{
y ++;
tb /= 10;
}
if(x + p1 > y + p2) puts(">");
if(x + p1 < y + p2) puts("<");
之后再有如果两个长度相等,则我们比较a, b两个数非0的部分即可,例如样例
a = 2, p1 = 3, b = 199, p2 = 1
这个时候我们这样讲a的长度等于b的长度 也就是 乘= 10 两次 再进行比较,就一定不会错,所以有*
if(x + p1