본문 바로가기

너와!나의!알고!리즘!/PROGRAMMERS

(4)
[2021 KAKAO , Python] 신규아이디추천 매번 백준만 풀다가 뭔가 실제 코테를 풀어보고 싶어서..도전해봤다 사실 합승택시요금?을 당차게 도전했다가 도저히,,안되서 봤더니 다익스트라..인가..머시기..아직 안배운 내용이여서 깔꼼하게 포기했다 (ʃƪ˘・ᴗ・˘) 난 포기가 쉬운 사람.. 처음에 이문제를 봤을 때는 와 저 단계를 다처리하면 시간 초과가 발생하지 않을까..? 라는 막연한 두려움이 있었는데 그냥 해야한다.. 묻지마... moot G Ma... 1번은 간단하게 lower함수를 사용해서 소문자로 바꿔준다. 앗 new_id를 왜 굳이 list로 바꿔주냐면,,사실,,, 처음에는 list에서 조작을 하려고 했는데 원본을 손상시키면 아래서 계속 꼬여서 그냥 arr라는 새로운 문자열에 조건에 부합하는 값들을 넣어주는 방식으로 풀어나갔다. 즉 list로..
[프로그래머스, Python] 짝지어 제거하기 문제 후기 [문제] 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙입니다. 이 과정을 반복해서 문자열을 모두 제거한다면 짝지어 제거하기가 종료됩니다. 문자열 S가 주어졌을 때, 짝지어 제거하기를 성공적으로 수행할 수 있는지 반환하는 함수를 완성해 주세요. 성공적으로 수행할 수 있으면 1을, 아닐 경우 0을 리턴해주면 됩니다. 예를 들어, 문자열 S = baabaa 라면 b aa baa → bb aa → aa → 의 순서로 문자열을 모두 제거할 수 있으므로 1을 반환합니다. [풀이] 🐣 첫번째 시도 - 실패 s=list(s) print(s) for i in rang..
[프로그래머스, Python] 스킬트리 문제 요약 [문제] 선행 스킬이란 어떤 스킬을 배우기 전에 먼저 배워야 하는 스킬을 뜻합니다. 예를 들어 선행 스킬 순서가 스파크 → 라이트닝 볼트 → 썬더일때, 썬더를 배우려면 먼저 라이트닝 볼트를 배워야 하고, 라이트닝 볼트를 배우려면 먼저 스파크를 배워야 합니다. 위 순서에 없는 다른 스킬(힐링 등)은 순서에 상관없이 배울 수 있습니다. 따라서 스파크 → 힐링 → 라이트닝 볼트 → 썬더와 같은 스킬트리는 가능하지만, 썬더 → 스파크나 라이트닝 볼트 → 스파크 → 힐링 → 썬더와 같은 스킬트리는 불가능합니다. 선행 스킬 순서 skill과 유저들이 만든 스킬트리를 담은 배열 skill_trees가 매개변수로 주어질 때, 가능한 스킬트리 개수를 return 하는 solution 함수를 작성해주세요. 스킬..
[프로그래머스 LV.1, Python] 모의고사 문제요약 [문제] 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 방식: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ... 2번 수포자가 찍는 방식: 2, 1, 2, 3, 2, 4, 2, 5, 2, 1, 2, 3, 2, 4, 2, 5, ... 3번 수포자가 찍는 방식: 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, ... 1번 문제부터 마지막 문제까지의 정답이 순서대로 들은 배열 answers가 주어졌을 때, 가장 많은 문제를 맞힌 사람이 누구인지 배열에 담아 return 하도록 solution 함..