본문 바로가기

리스트4

프로그래머스 코딩테스트 | 2단계 올바른 괄호 (Stack 알고리즘으로 풀이하기) 한동안 코테를 잠시 안풀었더니 효율성 테스트를 통과하는데 조금 헤맸던 문제입니다..! Stack 알고리즘을 활용하지 않고 문제를 풀었을 때 테스트 케이스 정확성은 통과하는 데 문제가 없으나, 효율성 테스트를 통과하기 어려우실 수 있습니다. 효율성 테스트까지 통과할 수 있는 문제 풀이 방법을 알려드릴게요 :) https://school.programmers.co.kr/learn/courses/30/lessons/12909 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 상황 : 괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ').. 2024. 4. 23.
프로그래머스 코딩테스트 | 1단계 카드뭉치 문제 풀이 (파이썬 sorted와 key) https://school.programmers.co.kr/learn/courses/30/lessons/159994 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 프로그래머스 코딩테스트 1단계에 수록되어 있는 '카드 뭉치' 문제를 풀었습니다. 다른 사람의 풀이와 비교해보니 제가 조금 독특하게 풀었더라구요. 제 코드가 좀 지저분하긴 하지만 남들과 다른 아이디어로 푼 게 마음에 들어 sorted 문법 정리할 겸 풀이과정을 작성해보고자 합니다. 우선 제출한 답안은 다음과 같습니다. def solution(cards1, cards2, goal): cards1_s.. 2024. 4. 3.
알고리즘 | 정렬 (선택정렬/삽입정렬/버블정렬) 1. 선택정렬 # 0번째 아이템이 가장 작다고 가정하고 시작한다. # 만약 0번째 아이템보다 더 작은 아이템이 있다면 그중 가장 작은 놈과 0번째 아이템을 swap 한다. arr = [20, 12, 10, 15, 2] for i_step in range(len(arr)): # 현재 이터레이션에서 가장 작은 값의 인덱스가 무엇인지 min_step에 기록한다. # 앞으로 계속 갱신해 나간다. min_step = i_step for i in range(i_step+1, len(arr)): if arr[i] >> [2, 10, 12.. 2024. 4. 1.
python | 중첩리스트 평탄화 함수 작성하기 flatten function (+ 여러번 중첩되는 경우 : 재귀함수!!) 가끔 코딩 테스트에서 이거.. 리스트를 평탄화해주면 쉽게 풀 수 있겠는데? 라는 생각이 들 때가 있습니다. 프로그래머스 0단계에서는 이 평탄화 함수를 작성하는 것 자체가 문제로 출제되기도 했었던거 같기도 하구요. 어쨌든 알고 있으면(또는 외워 두면) 정말 너무나!!!! 큰 도움이 되는!!!!! 평탄화 함수 작성하는 방법!!! 정리해 봅시다. * 설명 없이 함수만 빠르게 확인하고 싶으시다면 글 맨 아래로 가세요! * 먼저, 중첩 리스트란 무엇일까요? normal_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] weird_list = [1, 2, [3], 4, 5, [6], 7, [8, 9, 10]] crazy_list = [1, 2, [[3], 4, 5], [[6], 7, [8, [9.. 2024. 4. 1.