728x90
코딩 테스트 연습 12일, 13일
프로그래머스, n의 배수 고르기
📄 내 코드
n = 12
numlist = [2, 100, 120, 600, 12, 12]
def solution(n, numlist):
answer = []
for num in numlist:
if num % n == 0:
answer.append(num)
return answer
print(solution(n, numlist))
list.remove 사용해야하는 줄 알았는데. 아니었다.
주어진 값을 변경하지 않는게 좋은 것 같다.
📌 공부할만한 코드
def solution(n, numlist):
answer = [i for i in numlist if i%n==0]
return answer
프로그래머스, 2차원으로 만들기
📄 내 코드
num_list = [100, 95, 2, 4, 5, 6, 18, 33, 948]
n = 3
def solution(num_list, n):
answer = []
m = 0
for i in range(len(num_list) // n):
answer.append(num_list[m:m + n])
m += n
return answer
print(solution(num_list, n))
이 문제 역시 바로 num_list[n-2:n] 이렇게 접근했었다.
하지만, 이런 식의 접근은 역시 위험했다. n값이 for문에 들어가면 2,4,8,16,...로 바뀐다.
내가 원하는 계산은 2,4,6,8,...인데 말이다.!!
새로운 변수를 쓰면서 기존 n값은 for문안에서 값이 변경되지 않도록 해야 한다.
📌 공부할만한 코드
import numpy as np
def solution(num_list, n):
li = np.array(num_list).reshape(-1,n)
return li.tolist()
'알고리즘' 카테고리의 다른 글
코딩 테스트 연습 15일&16일 (0) | 2022.12.16 |
---|---|
코딩 테스트 연습 14일 (0) | 2022.12.14 |
타임어택 특강 (0) | 2022.12.01 |
자료구조 3주차_큐&해쉬 (0) | 2022.11.28 |
자료구조 2주차 복습&숙제 (0) | 2022.11.28 |