
def solution(n):
answer = 0
for i in str(n):
answer += int(i)
return answer
배울점
정수를 Str로 바꿔서 각 자릿수 더하기

[int(i) for i in str(n)][::-1]
def solution(n):
answer = []
for i in range(1,len(str(n))+1):
answer.append(int(str(n)[-i]))
return answer



def solution(n, arr1, arr2):
answer = []
result = ''
# 지도 한변의 크기 = n
# arr은 길이가 n인 정수배열 -> 한칸에 가로 한줄
# 각 가로 한줄인 정수를 이진수로 변환 bin(arr1[0])[2:]
# 각 배열 n만큼 왼쪽에 0으로 패딩해주기
# 두 리스트 합집합으로 벽 만들기
# 각 이진수 한줄을 공백과 샵으로 리스트 만들기
# 각 만든 리스트를 2차원 리스트로 반환하기
# 1 + 1 = 1, 1 + 0 = 1, 0 + 0 = 0
#2진수로 decode
decode_arr1 = [bin(i)[2:] for i in arr1]
decode_arr2 = [bin(i)[2:] for i in arr2]
#decode된 배열중 len(arr1)만큼 0으로 앞에 패딩해줘야됨
for i in range(len(decode_arr1)):
decode_arr1[i] = list(decode_arr1[i])
while len(decode_arr1[i]) != len(arr1):
decode_arr1[i].insert(0,"0")
#각 줄 다시 문자열로 바꿔주기
for i in range(len(decode_arr1)):
decode_arr1[i]="".join(decode_arr1[i])
# #패딩 후 1은 샵으로, 0은 공백으로 바꾸기 - list.replace(a,b)
# for i in range(len(decode_arr1)):
# decode_arr1[i]=decode_arr1[i].replace("1",'#')
# decode_arr1[i]=decode_arr1[i].replace("0",' ')
#decode된 배열중 len(arr1)만큼 0으로 앞에 패딩해줘야됨
for i in range(len(decode_arr2)):
decode_arr2[i] = list(decode_arr2[i])
while len(decode_arr2[i]) != len(arr2):
decode_arr2[i].insert(0,"0")
#각 줄 다시 문자열로 바꿔주기
for i in range(len(decode_arr2)):
decode_arr2[i]="".join(decode_arr2[i])
#패딩 후 1은 샵으로, 0은 공백으로 바꾸기 - list.replace(a,b)
# for i in range(len(decode_arr2)):
# decode_arr2[i]=decode_arr2[i].replace("1",'#')
# decode_arr2[i]=decode_arr2[i].replace("0",' ')
#이제 decode_arr1, decode_arr2를 합집합 해주면 됨
for j in range(len(decode_arr1)):
for x, y in zip(decode_arr1[j], decode_arr2[j]):
result += str(int(x) | int(y))
answer.append(result)
result = ''
# 합집합 한 리스트를 1은 샵으로, 0은 공백으로 replace하기
for i in range(len(answer)):
answer[i]=answer[i].replace("1",'#')
answer[i]=answer[i].replace("0",' ')
return answer
배울점
bin()함수에서 앞의 0b를 빼려면 뒤에[:2]를 붙여야됨| 연산으로 확인append() 는 리스트 맨뒤에 넣는거니깐, insert(index,원소) 를 쓰면 됨.for i,j in zip(arr1,arr2): 는 두 리스트에 있는 값을 튜플로 묶어서 같이 쓸 수 있는 조건임.
