一般定义无穷大数都是inf=99999999,或者0x7f ff ff ff,但是有的时候inf过大,虽然保证了没有数超过它,但是在需要加上一个数的时候,inf+a可能会导致溢出,最终变成一个负数。
而0x3f3f3f3f的数量级也1e9的,(一般题不会给超过1e9的数),在把它当成无穷大的时候,两个0x3f3f3f3f相加的结果也不会爆int。所以这个数比较合适了。
并且如果开一个数组,让数组中每个元素的值都为这个无穷大时,可以使用
memset(a, 0x3f, sizeof(a))
它的效果就是int类型的4个字节中每个字节都是0x3f,最终这个元素的值也是0x3f3f3f3f。