63. 2차원으로 만들기

image.png

def solution(num_list, n):
    answer = []
    for i in range(0,len(num_list),n):
        answer.append(num_list[i:i+n])
    return answer
def solution(num_list, n):
		answer = [num_list[i:i+n] for i in range(0,len(num_list),n)]
    return answer

배울점

  1. 리스트 슬라이싱을 이용해서 여러개의 리스트값을 한번에 append할수있음
  2. 리스트안에서 리스트슬라이싱을 이용해서 여러개를 append하면 2차원 배열이 만들어짐

64. A로 B만들기

image.png

def solution(before, after):
    for i in before:
        if i in after and before.count(i)==after.count(i):
        #알파벳마다 개수랑 존재여부 확인하는 조건
            continue 
        else:
            return 0
    return 1
def solution(before, after):
    before=sorted(before)
    after=sorted(after)
    if before==after:
        return 1
    else:
        return 0

배울점

  1. if의 조건을 두개 and로 연결함. 알파벳마다 개수랑, 존재여부 확인하는 조건을 리스트.count() 로 구현함
  2. 문자리스트나 문자열도 sorted함수를 이용하면 순서대로 배열할 수 있음 → 같은지만 검사할 수 있음.

65. k의 개수

image.png

def solution(i, j, k):
    answer = 0
    for l in range(i,j+1):
        if str(k) in str(l):
            answer += str(l).count(str(k))
    return answer

배울점

  1. count함수로 문자열에서 특정 문자의 개수를 셀 수 있음.
  2. 숫자를 str로 바꿔야 각 자리 숫자를 체크할 수 있음.

66. 한번만 등장한 문자

image.png

def solution(s):
    answer = ''
    for i in s:
        if s.count(i) == 1:
            answer += i
    return "".join(sorted(answer))

배울점

sorted() 함수는 무조건 리스트를 반환함

sort() 함수는 리스트에서만 사용할 수 있음. 문자열은 사용불가.

67. 숨어있는 숫자의 덧셈

image.png