99클럽

·코딩테스트
🔗카드 뭉치 📌오늘의 학습 키워드쉬운 문제✨공부한 내용 본인의 언어로 정리하기리스트 사용📚오늘의 회고흠... 미들러 문제 치고 너무 쉬운거 같다..[🤓문제 해결 코드]def solution(cards1, cards2, goal): answer = '' for word in goal: if cards1 and cards1[0] == word: cards1.pop(0) continue if cards2 and cards2[0] == word: cards2.pop(0) continue return "No" return "Yes"
·코딩테스트
🔗 이중우선순위큐  📌오늘의 학습 키워드Heap 문제였고 어렵지 않았다.✨공부한 내용 본인의 언어로 정리하기Heap을 사용하면 가장 작은 요소를 뽑아 낼 수 있으나 가장 큰 요소는 다른 처리를 해줘야 한다. 📚오늘의 회고어떤 문제가 있었고, 나는 어떤 시도를 했는지Heap을 사용하면 쉽게 해결할 수 있었다. 어떻게 해결했는지가장 큰 요소를 뽑아내는 방법으로는  list로 바꿔준 뒤에 sort 하고 pop을 했다.무엇을 새롭게 알았는지heapq를 list로 변환하면 sort 된 리스트를 반환하는지 긴가민가 했는데 아닌거 같다. sort를 하고 안하고 했을 때 테스트 케이스 1개를 통과 유무가 달라졌기 때문이다.내일 학습할 것은 무엇인지진짜로 재귀 공부한다.[🤓문제 해결 코드]import heapqd..
·코딩테스트
🔗 더 맵게  📌오늘의 학습 키워드힙이다 오늘은! 힙을 사용해야 효율성 테스트 통과 가능하다~✨공부한 내용 본인의 언어로 정리하기힙은 우선순위큐이다. 힙을 사용하면 최소인 요소를 뽑을 때 좋은 효율로 실행 가능하다.📚오늘의 회고어떤 문제가 있었고, 나는 어떤 시도를 했는지사실 저번에 풀었던 문제다! 근데 또 오랜만이라 그런지 바로 힙이 생각이 안나고 리스트로 풀고자했다. 😭어떻게 해결했는지정확도는 통과하지만 효율성에서 탈락! 힙으로 고치고 조건을 추가해 더 실행속도가 빠르도록 했더니 통과했다.무엇을 새롭게 알았는지while 문을 사용할 때 종료할 수 있으면 최대한 빨리 하자. while 조건에 넣지 말고 실행중에 break 할 수 있으면 그렇게 하기내일 학습할 것은 무엇인지재귀... [🤓문제 해..
·코딩테스트
🔗 기능개발📌오늘의 학습 키워드큐를 사용하는 문제였다! 간단하게 생각하자.✨공부한 내용 본인의 언어로 정리하기문제를 풀 때 고려하지 않아도 되는 요소들은 버리고 꼭 필요한 것만 가지고 간단하게 생각하면 좋다.📚오늘의 회고어떤 문제가 있었고, 나는 어떤 시도를 했는지오늘은 각 작업이 주어지고, 그 작업을 수행하는 속도가 주어졌다.조건은 앞 순서의 작업이 완료되어야 그다음 작업을 같이 완료시킬 수 있다.그래서 while문을 통해 각각 매 순환을 돌며 작업현황을 업데이트 시켜주었고 완료된 것이 있을 때 한꺼번에 큐에서 빼줬다.어떻게 해결했는지처음에 progress를 빼줄 때 speed에서도 해당 속도를 빼줬어야 했는데 빼주지 않아서 문제가 생겼으나 금방 고쳤다.무엇을 새롭게 알았는지🥑내일 학습할 것은 ..
·코딩테스트
🔗 하노이의 탑  📌오늘의 학습 키워드오늘은 유명한 하노이의 탑 문제가 나왔다. 재귀를 대표하는 문제로 생각을 좀 해야 한다고 생각한다. ✨공부한 내용 본인의 언어로 정리하기문제를 나눠서 생각하는 방법을 알아야한다. 그 과정에서 중요한 것들만 살리고 다른 것들은 묵음 처리(?) 해버리는 선택적 집중 능력!여기에서도 가장 위에있는 블록만 생각하고 나머지는 한 뭉텅이로 생각한 다음에 그것을 그대로 재귀로 돌려야 한다. 📚오늘의 회고어떤 문제가 있었고, 나는 어떤 시도를 했는지처음 하노이의 탑 문제를 푼 지 한 5년이 지난 거 같은데 이번에도 시원치 않게 했다.. 문제에서 1, 2, 3개의 기둥이 있고 1에 있는 것들을 모두 3 기둥으로 옮겨야 한다. 그렇다면 제일 위의 것을 2 기둥으로 옮기고 아래 전..
·코딩테스트
🔗 의상 📌오늘의 학습 키워드dictionary와 연산을 통해 간단하게 해결했다. ✨공부한 내용 본인의 언어로 정리하기python은 hash가 따로 없고 dictionary를 사용하면 된다고 한다. 📚오늘의 회고어떤 문제가 있었고, 나는 어떤 시도를 했는지오늘 문제를 이해하는 데 조금 어 리를빗 헤맸는데 그냥 단순히 계산하면 되는 문제였다.어떻게 해결했는지각 유형별로 몇개의 선택지가 있는지 확인하고, 그 숫자에 1을 더해 전부 곱한다. 1을 더하는 이유는 선택하지 않았을 때를 나타내기 위해서다. 그 이후 전체 곱에서 1을 빼준다. 전부 선택하지 않았을 때를 제외시켜 주는 것이다. 무엇을 새롭게 알았는지🤭내일 학습할 것은 무엇인지완전탐색.. ㅋㅋㅋ [🤓문제 해결 코드]def solution(clo..
·코딩테스트
🔗 전화번호 목록 오늘은~~ 파리올림픽 개막식이 있는 날~~📌오늘의 학습 키워드오늘 문제의 키워드는 해쉬라고 적혀있었는데 정작 sort로 해결 가능했다.✨공부한 내용 본인의 언어로 정리하기문자열의 sort와 숫자의 sort기준이 다르다!📚오늘의 회고어떤 문제가 있었고, 나는 어떤 시도를 했는지오늘 문제를 풀기 위해 for문 2개로 완전 탐색을 시도했는데 효율성 테스트에서 실패했다.어떻게 해결했는지처음에는 가장 짧은 전화번호를 찾아 그것으로 시작하는지 확인하는 방법으로 했는데 반례가 존재했다. 여기에서 문자열을 그냥 sort 해 봤는데 목표한 바와 같이 비슷한 문자열끼리 묶이는 것을 확인했다.무엇을 새롭게 알았는지당연한 걸수도 있지만 문자일 때와 숫자일 때 sort의 결괏값이 다르다!print(sor..
·코딩테스트
🔗 JadenCase 문자열 만들기  📌오늘의 학습 키워드오늘은 string 처리를 하는 문제였다. ✨공부한 내용 본인의 언어로 정리하기사용한 함수들을 쭉 정리~split() : 코테할때 많이 쓰는 함수 중 하나. input이 string으로 들어오는 경우가 많아 공백에 따라 나누고 싶을 때 사용한다. 'hello world'.split(' ') 이런 식으로 사용하면 공백에 따라 나눠준다.isdigit() : 해당 string이 숫자인지 알아내기 위해 사용. '3'.isdigit() 하면 true를 반환한다.lower(), upper() : string을 모두 소문자 또는 대문자로 바꿔줌. 'Hello'.lower() 이렇게 쓴다.📚오늘의 회고어떤 문제가 있었고, 나는 어떤 시도를 했는지처음에 잘 ..
yolang
'99클럽' 태그의 글 목록 (4 Page)