题目描述:求出1 ~ 13的整数中1出现的次数,并算出100 ~ 1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1、10、11、12、13因此共出现6次,但是对于后面问题他就没辙了。ACMer希望你们帮帮他,并把问题更加普遍化,可以很快的求出任意非负整数区间中1出现的次数。

i c } m l p a o s r s f } f } t u / u F n z n F o c z c o r v f } r z v v w } r u 3 o a o e z o a a h e n 2 n r r t n r r i t d S e u e l u a o N c i v w } r N c i e l l c i r t l u o a h n u o e e / o n i u m u i r i m u = i t t u * o t s n n l c s n n = c n i ( t i e i } i o 2 t 1 < a b t o o _ 1 n f n u ( = > 1 u n = . d i d n _ = = = 8 = + 0 n n . e n i e t n 2 = t { : 0 < x d n c x n 0 n n n e d o : { ( I + = x e u / / % 8 a n 1 x n = I t i ! % t n i i + ) { = 1 1 t 0 + 0 ) 8 0 = 0 ) = { = 1 / I a n 1 I / 1 t n 1 0 { t 0 { = { = ( ( a i a 1 + 8 0 ) 1 ( 1 ) a 0 % 1 0 = = 1 ) ? b + 1 : 0 ) ;

算法思想:1.常规思路(暴力解决),一个数一个数的计数 2.寻找数学规律

github地址:https://github.com/cubegao/LeetCode