알고리즘/leetcode
989. Add to Array-Form of Integer(Easy)
1.5볼트
2023. 2. 16. 19:07
728x90
1.5v
정수의 배열 형식은num 왼쪽에서 오른쪽 순서로 숫자를 나타내는 배열입니다.
- 예를 들어 num = 1321 의 경우 배열 형식은 입니다 [1,3,2,1].
정수 num의 배열 형식 과 정수가 주어지면 정수의 배열 형식을k 반환합니다 . num + k
리스트로 표현된 숫자와 정수로 표현된 숫자를 더하는 문제
일의 자리부터 한자리씩 순차적으로 더하면서 num리스트의 값을 바꿔나간다 10을 넘어가면 변수 s 에 저장하여
다음 연산에 사용
처음 num 리스트에 0을 넣는 이유는 가장 앞자리의 연산이 10을 넘어가면 리스트를 넘어가 에러가 나기때문에 0을넣고
연산후에 0이 남아 있으면 빼준다.
class Solution:
def addToArrayForm(self, num: List[int], k: int) -> List[int]:
s=0
ll=len(str(k))
for i in range(abs(ll-len(num))+2):
num.insert(0,0)
i=1
while i<ll+1 or s!=0:
a=num[-i]+(k%10)+s
s=a//10
num[-i]=a%10
k//=10
i+=1
while num[0]==0:
num.pop(0)
return num