1. 一本书共n页,有一串页码从1到n,计算各数码分别用到了几次
注:数码为0,1,2。。。。。。9的数字
先把数字转化成列表,然后从1-n,都转化成列表后extend. 对于这个列表用Counter 处理一下。
-
from collections import Counter
-
def count_pagenum(n):
-
ll=list(range(1,10))
-
for i in range(10,n+1):
-
lpage=num_2_seq(i)
-
ll.extend(lpage)
-
ll.sort()
-
d=Counter(ll)
-
print(d)
-
-
def num_2_seq(n):
-
#n>9
-
ll=[]
-
while n > 9:
-
a,b=divmod(n,10)
-
ll.append(b)
-
n=a
-
ll.append(a)
-
return ll
-
-
#count_pagenum(11)
2. Given an unsorted integer array, find the first missing positive integer,
INPUT: [1,2,0] OUTPUT:3
INPUT: [3,4,-1,1] OUTPUT:2
leetcode 上的题目,用dict 就可以解决问题。
-
def first_missing_positive(seq):
-
length=len(seq)
-
if length==0:
-
return 1
-
numdict={}
-
for num in seq:
-
if num > 0:
-
numdict[num]=num
-
for i in range(1,length+1):
-
if numdict.get(i,-1)==-1:
-
return i
-
return length+1
-
-
print(first_missing_positive([1,2,0]))
-
print(first_missing_positive([3,4,-1,1]))
3.
Convert a picture to ascii text.
可参考的代码如下:
#
#
#
阅读(1238) | 评论(0) | 转发(0) |