题解 P5238 【整数校验器】

t162

2019-03-02 19:45:59

Solution

Python的int可谓是万能的,因为它在理论上能存储无限大的数据~~(别爆内存就好)~~,所以,它常被用在大数据处理方面。 代码: ```python s=input().split()#由于input()是读入一整行的,所以这里要split一下,将三个数字分开来。 l=int(s[0]) r=int(s[1]) m=int(s[2]) for a in range(0,m):#在[0,m)范围内循环,相当于循环m次。 num=input()#从控制台读入一个字符串 if((len(num)==1)and(num[0]=='-')):#此处有坑:不加判断遇到单独的负号会RE。 print(1) continue if(((num[0]=='0')and(not(len(num)==1)))or((num[0]=='-')and(num[1]=='0'))):#判断数字是否合法。 print(1) continue if(len(num)>20):#如果数字位数大于MAX_INT64的位数就不必继续进行判断了,一定不在[l,r]范围内的。 print(2) continue if((l<=int(num))and(int(num)<=r)):#直接判断是否在范围内。 print(0) continue print(2) ```