Data house

[python] - 그림 확대 본문

Computer Knowledge/코테 대비 오답노트

[python] - 그림 확대

l._.been 2023. 5. 20. 17:21
728x90
문제

https://school.programmers.co.kr/learn/courses/30/lessons/181836/solution_groups?language=python3 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

이중 반복문 사용해야하는 문제이다.

 

 

나의 풀이
def solution(picture, k):
    result = []
    re = []
    for i in picture:
        arr = ''
        for j in i:
            arr+=j*k
        result.append(arr)
        
    for i in result:
        for j in range(k):
            re.append(i)
            
    return re

아주 기초에 근거한 풀이..

필요없는 변수들도 너무 많고 반복문도 빈번하다

 

인상적인 풀이

1. replace를 사용해서 가로길이 변형 

def solution(picture, k):
    answer = []
    for i in range(len(picture)):
        for _ in range(k):
            answer.append(picture[i].replace('.', '.' * k).replace('x', 'x' * k))
    return answer

 

 

2. 빈 문자열 사용

def solution(picture, k):
    answer = []
    for pic in picture:
        word = ''
        for s in pic:
            word += s*k
        for _ in range(k):
            answer.append(word)
    return answer