본문 바로가기

> 알고리즘 문제 풀이/프로그래머스27

lv1-행렬의 덧셈 (python, 파이썬) """ 1번: 나의 풀이 (단순 구현) """ def solution(arr1, arr2): ans = [0] * len(arr1) for i in range(len(arr1)): tmp = [] ans[i] = tmp for j in range(len(arr1[0])): tmp.append(arr1[i][j] + arr2[i][j]) return ans """ 2번: 나의 풀이 (zip 1번 사용) """ def solution2(arr1, arr2): ans = [] for a1, a2 in zip(arr1, arr2): x = 0 tmp = [0] * len(a1) for _ in range(len(a2)): tmp[x] = a1[x] + a2[x] x += 1 ans.append(tmp) retu.. 2020. 10. 22.
lv1-직사각형 별찍기 (python, 파이썬) 1번: 나의 풀이(2차원적 접근) a, b = map(int, input().strip().split(' ')) for i in range(b): for j in range(a): print('*', end='') print() 2번: 나의 풀이(1차원적 접근) a, b = map(int, input().strip().split(' ')) for x in range(1, a*b+1): if x % a == 0: print('*') else: print('*', end='') 3번: 1,2번 성공 후 참고한 풀이 a, b = map(int, input().strip().split(' ')) print(('*' * a + '\n') * b) 4번: 확인하기 - 문자열의 단순 반복은 * 연산으로 간단하게 해결.. 2020. 10. 22.
lv1-서울에서 김서방 찾기 (python, 파이썬) 1번: 나의 풀이 def solution(seoul): return '김서방은 ' + str(seoul.index("Kim")) + '에 있다' 2번: 1번 성공 후 참고한 풀이 def solution2(seoul): return '김서방은 {}에 있다'.format(seoul.index("Kim")) 3번: 확인하기 - 2번 코드가 가독성이 더 좋다는 것을 느꼈다 - 효율성 면에선 1번 코드가 2번에 비해 많이 좋았다. 문자열의 + 연산이 많이 빠르다는 것을 다시 한 번 느꼈다 2020. 10. 22.
lv1-이상한 문자 만들기 (python, 파이썬) -1번: 나의 풀이 def solution(s): ans = '' ck = False for x in range(len(s)): if s[x] == ' ': ans += ' ' ck = True k = x + 1 else: if ck: if (x-k) % 2: ans += s[x].lower() continue else: if x % 2: ans += s[x].lower() continue ans += s[x].upper() return ans - 2번: 1번 성공 후 참고한 풀이 def solution2(s): return ' '.join([''.join([c.upper() if i % 2 == 0 else c.lower() for i, c in enumerate(w)]) for w in s.split.. 2020. 10. 21.