본문 바로가기

백준31

[후기] 코드트리로 약점 보완하기 안녕하세요 코코종입니다. 약 한 달 전에 코드트리 후기를 남겼는데 시간이 엄청 빠르네요! 지난 포스팅 살펴보기 저는 코딩테스트 준비에 주로 2가지 플랫폼을 사용하고 있습니다. 백준에서는 스트릭의 노예가 되어 1일 1알고리즘을 이어가고 있고, 코드트리에서는 주로 부족하다고 생각되는 유형을 공부하고 있습니다. 저는 이번에 DP 파트에서 어려움을 겪고 있었는데요, 마침 협찬(?)으로 사용하던 코드트리에서 DP 파트를 공부할 수 있었습니다. 코드트리에서 가이드북을 통해 유형별로 차근차근 학습할 수 있다는 장점이 있습니다. 저는 그래서 DP1과 DP2 문제를 다 풀고자~ 했지만,,, 실패했습니다.. 그래도 DP1은 다 푼게 뿌듯하네요 허허. 덕분에 DP에 자신감이 생겼고! 응시했던 네이버 코테에서는 DP가 나오지.. 2024. 4. 1.
[후기] 코드트리로 코딩 테스트 공부하고 광명찾자 코드트리가 뭐에요? 개발자에게 뗄레야 뗄 수 없는 숙명... 그것은 '코딩 테스트' 다들 취업/이직 시즌에 반짝하는 경우가 많은데요(일단 나부터) 유명한 사이트라고 한다면 백준, 프로그래머스, 리트코드 등등이 있는데 저는 코드트리는 들어보지 못했었답니다.(미안해요 코드트리...) 근데 사실은 이게 창조손해였지 뭐에요..? 이렇게 좋은 플랫폼이 있는지 몰랐던 나.. 반성해 혹시 아직도 손해를 보고 있을 분들을 위해 한달 이용후기를 작성합니다! 유료 서비스이지만 무료로 제공되는 기능들도 있다구요!! (가격도 합리적) 코드트리의 장점 1: 실력진단 어떤 플랫폼이던 처음에는 문제만 좌르르르륽 있고 내 실력을 알기 어렵잖아요? 특히 처음에 공부할때의 그 막막함이란...(공포의 별찍기) 그래서 어떤 문제부터 풀어야.. 2024. 3. 1.
[Swift 알고리즘] 프로그래머스 - 기능개발 안녕하세요 코코종입니다. 이전에 풀었던 문제지만 다시 풀었습니다. 확실히 이전에는 구현에 어려움을 조큼... 겪었는데 조금 연습했다고 익숙해졌나보네요 쿠쿠쿠... import Foundation func solution(_ progresses:[Int], _ speeds:[Int]) -> [Int] { var answer: [Int] = [] var progresses: [Int] = progresses // queue처럼 사용 var speeds: [Int] = speeds // queue 처럼 사용 while !progresses.isEmpty { for i in 0..= 100 { progresses.removeFirst() speeds.removeFirst() result += 1 } if res.. 2023. 5. 7.
[Swift 알고리즘] 프로그래머스 - 다리를 지나는 트럭 안녕하세요 코코종입니다. 이전에 파이썬으로 풀었던 문제인데 다시 풀어봤습니다. 파이썬 처럼 queue나 deque가 없는게 조큼 아쉽지만 악깡버 하겠습니다... import Foundation func solution(_ bridge_length:Int, _ weight:Int, _ truck_weights:[Int]) -> Int { // bridge_length -> 다리의 길이(동시에 올라갈수 있는 트럭수) // weight -> 최대 무게 var answer = 0 var queue: [Int] = truck_weights var bridge: [Int] = Array(repeating: 0, count: bridge_length) var passed: [Int] = [] var sum = 0 /.. 2023. 5. 6.
[Swift 알고리즘] 프로그래머스 - 의상 안녕하세요 코코종입니다. 어렵지 않으니 바로 갑니다. import Foundation func solution(_ clothes:[[String]]) -> Int { // idea: (갯수+1)씩을 곱하고 -1해주기(아무것도 안입은 경우) var answer = 1 var dict: [String : Int] = [:] // 카테고리명 : 갯수 for cloth in clothes { let category = cloth[1] var cnt: Int = dict[category] ?? 0 dict[category] = cnt + 1 } dict.forEach { k, v in answer *= (v+1) } answer -= 1 // 아무것도 안입는 경우 return answer } 어떻게 계산하느냐의 .. 2023. 5. 5.
[Swift 알고리즘] 프로그래머스 - 예상 대진표 안녕하세요 코코종입니다. 어제 다 못푼것 까지 해서 이어서 갑니닷.. import Foundation func solution(_ n:Int, _ a:Int, _ b:Int) -> Int { // 2^m = n // a가 각각 라운드에 몇번째 블록에 있는지 체크하기 // n = 8일때 // [1 2 3 4 5 6 7 8] // a = 4, b = 7 일때 // a-1 / 2 -> 1 // b-1 / 2 -> 3 // 두개가다르므로 // 다시 2*2로 나눈다 // a-1 / 4 = 0 // b-1 / 4 = 1 // 두개 다르므로 다시 2^3으로 나눔 // a-1 / 8 = 0 // b-1 / 8 = 0 같음! -> 만남 // 위와 원리는 비슷하나 세부 구현이 틀림! var answer = 0 var a .. 2023. 5. 4.