코딩 테스트에 대해 스스로의 수준이 가늠이 안되어 일단 난이도 1 들을 모두 풀이한 후 난이도 2 이상의 문제들을 하루에 일정 개수 이상 문제 풀이를 할 예정이다. 난이도 1 이지만 다른 사람들의 문제 풀이 방식이 나의 문제풀이 방식과는 다를 경우, 스스로 공부할 내용이 있는 경우도 블로그에 적을 것이다.
이 문제는 난이도가 1이지만 나의 문제풀이 방식과 다른 문제 풀이 방식들이 있어서 글을 쓰려고 한다.
문제의 설명은 아래와 같다.
위의 문제에 대한 나의 풀이는 아래와 같다.
나의 문제풀이와 비교할 코드는 아래의 코드이다.
나의 문제풀이는 1 줄 for문을 이용하여 변수n을 뒤집기 위해 str() 함수를 이용하여 str 타입으로 바꾼 후 str 타입을 역으로 slicing하여 각 원소들을 반환하고 이때 int() 함수를 이용하여 정수 타입의 리스트로 반환한 것이다.
비교할 풀이는 list(map()) 방식인데 이 방식은 아직 잘 사용하기 어려운 것 같다. 복기할 겸 map() 에 대해 설명을 짧게 하자면 map(A, B) 가 있으면 A는 B를 어떻게 바꿀지 바꿀 내용을 채우고 B는 A로 인해 바뀌는 인자를 기입하면 된다. 위의 풀이는 비교적 A와 B가 단순하여 이해하기 편하다. 그러나 아래 그림처럼 map에 lambda를 이용하여 활용하는 경우도 있다. 따라서 list(map())을 이용하기 위해서는 lambda까지 응용할 수 있도록 공부해야 할 것 같다.
map과 lambda 출처: https://tykimos.github.io/2020/01/01/Python_Lambda_Map/
[프로그래머스] 다단계 칫솔 (0) | 2021.12.30 |
---|---|
[프로그래머스] 최대공약수와 최소공배수 (0) | 2021.12.29 |
[프로그래머스] 행렬의 덧셈 (0) | 2021.12.25 |
[프로그래머스] 소수 만들기 (0) | 2021.12.23 |
[프로그래머스] 약수의 개수와 덧셈 풀이 (0) | 2021.12.23 |
댓글 영역