python做题记录004

题目

对于非负整数X而言,X的数组形式是每位数字按从左到右的顺序形成的数组。例如,如果 X = 1231,那么其数组形式为 [1,2,3,1]
给定非负整数X的数组形式A,返回整数X+K的数组形式。

image.png

第一种解法

把list转化为int

1
2
3
4
5
6
7
8
9
10
11
class Solution:
def addToArrayForm(self, A: List[int], K: int) -> List[int]:
first
num = 0
for i in A:
num = num *10 + i
ans_num = num +K
ans = []
for c in str(ans_num):
ans.append(c)
return ans

第二种解法

把int转化为list

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
class Solution:
def addToArrayForm(self, A: List[int], K: int) -> List[int]:
# second
li = []
for x in str(K):
li.append(int(x))

while len(A)>len(li):
li.insert(0,0)

while len(A)< len(li):
A.insert(0,0)

out = 0
ans = []
for x,y in zip(li[::-1],A[::-1]):
temp = x+y+out
if temp < 10:
ans.append(temp)
out = 0
else:
out = 1
ans.append(temp-10)
if out == 1:
ans.append(1)
return ans[::-1]

----本文结束啦感谢您阅读----

欢迎关注我的其它发布渠道