1. 程式人生 > >Python實現Pat 1049. Counting Ones (30)

Python實現Pat 1049. Counting Ones (30)

題目

The task is simple: given any positive integer N, you are supposed to count the total number of 1’s in the decimal form of the integers from 1 to N. For example, given N being 12, there are five 1’s in 1, 10, 11, and 12.

Input Specification:

Each input file contains one test case which gives the positive N (<=230).

Output Specification:

For each test case, print the number of 1’s in one line.

Sample Input:
12
Sample Output:
5

解答,會超時

#直接檢查每一個數值中1的個數
N=int(input())
sum=0
for i in range(N+1):
    si=str(i)
    sir=si.replace('1','')
    sum+=len(si)-len(sir)
print (sum)

這裡寫圖片描述