标签:hdu
1 9 1 10
1 1
/*题解:
有点略坑的题,考虑完所有的情况再Wrong了一次的情况下A了。
注意点:
输入数据为int范围内的整数,所以可以是负数,例如-18、-19
输入数据不一定L<=R,所以先判断大小并交换位置。(L<=R则不用交换)
0也可以被9整除
【0,0】,【9,9】,【-9,-9】能被整除个数均为1
提供几组数据:
【0,19】 3
【9,18】 2
【-18,-9】 2
【-20,9】 4
【-18,-7】 2
*/
#include<cstdio> #include<cmath> #include<stdlib.h> int main(){ int l,r,t; while(scanf("%d %d",&l,&r)!=EOF) { if(l>r)//不交换会Output Limit Exceeded { t=l; l=r; r=t; } if(l==r)//情况一、l==r { if(l%9==0) { printf("1\n"); } else printf("0\n"); } else { if(l>0)//l>0,r>0 { printf("%d\n",r/9-(l-1)/9); } else if(l==0)//l==0,r>0 { printf("%d\n",r/9+1); } else if(l<0) { if(r==0)//l<0,r==0 { printf("%d\n",abs(l/9)+1); } else if(r<0)//l<0,r<0 { printf("%d\n",abs(l/9)-(abs(r)-1)/9); } else if(r>0)//l<0,r>0 { printf("%d\n",r/9+abs(l/9)+1); } } } } return 0; }
标签:hdu
原文地址:http://blog.csdn.net/u013806814/article/details/42269481