코딩,해볼까

04.28. 2차원배열 / 강의시청 / 과제 본문

Back/TIL

04.28. 2차원배열 / 강의시청 / 과제

떠굥 2023. 4. 28. 00:28

💜 오늘의 공부

1) 강의..

2) 알고리즘 풀이

📍 프로그래머스 - 코딩 기초 트레이닝

✔ 특별한 이차원 배열 2

 

# n*n 크기의 이차원 배열 이름 : arr
# 3*3 0 ≤ i, j < n
# arr[i][j] = arr[j][i]
# [[5, 192, 33]
# [192, 72, 95]
# [33, 95, 999]]


def solution(arr):
    for i in range(len(arr)): 
        for j in range(len(arr)):
            if arr[i][j] != arr[j][i]:
                return 0
    return 1

 

 

Day 2 출력, 연산

덧셈식 출력하기

 문자열 붙여서 출력하기

 문자열 돌리기

 홀짝 구분하기

✔ 문자열 겹쳐쓰기

 

어렵지 않을 것이라고 생각했는데.. 복병이었다.

my_string_list[s: ] 로 작성하면 가능할 것이라고 생각했는데,

s부터 끝까지 라는 뜻으로 만약 s 이후에도 글자가 있다면 그 글자가 날아간다.

my_string_list[s:s] 라고 작성해줘야 그 자리에 원하는 string을 넣을 수 있었다.

# 문제풀이 흔적
# new_string = my_string[s:o_length]
    # print(change.replace)
    # my_string.split(s:o_length)
    # my_string.replace([s:o_length], overwrite_string)

# my_string_list[s:s] = overwrite_string 이 가능하다는 것이 포인트
def solution(my_string, overwrite_string, s):
    answer = ''
    o_length = s + int(len(overwrite_string)) 
    my_string_list = list(my_string)
    del my_string_list[s:o_length]
    my_string_list[s:s] = overwrite_string
    answer = ''.join(my_string_list)   
    return answer

 

💜  알게된 점

1) 리스트 자료형에 대한 공부가 더 필요하다.

2) 리스트에는 추가, 삭제, 정렬, 뒤집기 등 다양한 함수가 있어서 이를 더 잘 활용할 수 있어야 한다.

Comments