프로그래머스 30

[Swift] 프로그래머스 LV1. 최소직사각형

[Swift] 프로그래머스 LV1. 최소직사각형 ✅ [Swift] 프로그래머스 LV1. 최소직사각형 func solution(_ sizes:[[Int]]) -> Int { var long = 0 var short = 0 sizes.forEach { size in let tempLong = max(size[0], size[1]) let tempShort = min(size[0], size[1]) long = max(long, tempLong) short = max(short, tempShort) } return long * short } 이걸 포스팅 하는 이유는! 푸는데 오래걸렸다.. ✅ 알고리즘 큰 길이는 큰 길이대로 모아서 비교하고 짧은 길이는 짧은 길이대로 모아서 비교한다. 가로 세로에 얽매이면 안돼..

[Swift] 프로그래머스 LV1 실패율(시간 초과 해결)

프로그래머스 LV1 실패율(시간 초과 해결) ✅ 우선 5번이랑 9번이 시간 문제로 통과가 안되었다. 그래서 나는 코드를 개선해야함을 느꼈는데 방법은 크게 두 가지가 있다. ✅ 1. dictionary -> tuple로 변경 ✅ 2. filter -> for문으로 변경 이 두개를 통해 해결했다. 결론 : 코딩 테스트에서는 튜플 적극 활용하고 filter보다는 for문을 더 사용해보자. 아.. 시간 초과로 통과가 안된다. func solution(_ N:Int, _ stages:[Int]) -> [Int] { var dict = [Int: Double]() // [스테이지: 실패율] var player = stages.count for i in 1...N { let current = stages.filter..

[iOS] 프로그래머스 FLO 과제

[iOS] 프로그래머스 FLO 과제✅  과제 기간 - 2022-02-25 14:55~ 2022-03-03 14:54(7일) ✅ 개발 환경 - 언어 Swift 5 - iOS Deployment Target: 10.0 ✅ 써드파티 - RxSwift 6.5 - SnapKit - Then - Alamofire 5.5.0 - Kingfisher 5.0.0 - RxGesture 4.0.0 ✅ 내장 프레임워크 - AVFoundation ✅ 기능 요구 사항   이분탐색 알고리즘 사용해서 가사 찾는거 최적화하기.     ✅ 과제코드 위치https://github.com/lgvv/FLO ✅ Demo 영상" data-ke-type="html">HTML 삽입미리보기할 수 없는 소스

project 2022.03.06

[프로그래머스] 힙(Heap) 42627 Swift

✅ 드! 디! 어! Level 3 문제를 해결했다 ~_~ 물론,,, 그래프나 트리 등 다른 부분에서 부족한 점이 많지만, 우선 해결한 것에 정말 큰 기쁨을! 자료구조 힙은 하나의 트리라고 하는데, 막상 구현을 하나의 트리로 한 것 같지가 않고, 내 생각에도 시간복잡도의 개선점을 훨씬 더 가져갈 수 있는 부분인데, 그렇지 못한 것 같아서 매우 아쉬움! 🔶 문제를 풀면서 조금 어려웠던 부분 (코드에 다 있으니까 천천히 읽어보기) 1. 2차원 배열에서의 정렬 방법 2. 문제를 파악하는 능력 특히 2번의 경우에는 생각보다 치명적이였는데, 스케줄러가 쉬는 시간도 포함하여 계산을 하였더니, 당연히 히든 케이스에서 틀림!! (학교 수업시간에는 이것도 계산하는 걸로 공부한 것 같은데 음...) 아무튼!! 문제는 그렇지..

[프로그래머스] 다리를 지나는 트럭 42583 swift

✅ 이번 시간에는 이 문제를 알아보자..! 난이도는 개인적으로 쉬움! 이번시간에 확실하게 느낀건데, 어떤 문제를 읽고 파악하기까지가 늦는다... 그래서 문제와 다르게 다른 알고리즘을 짜다가 아..! 이렇게 문제가 이게 아니구나! 를 매번 늦게 파악해 ㅠㅠ // // main.swift // algorithm // // Created by Hamlit Jason on 2021/11/16. // https://programmers.co.kr/learn/courses/30/lessons/42583 import Foundation func solution(_ bridge_length:Int, _ weight:Int, _ truck_weights:[Int]) -> Int { var time = 1 var midd..

[프로그래머스] 행렬의 곱셈 12949 Swift

✅ 행렬의 곱셈을 알아보자. 정말 기초다. 예전에 대학에서 공부할 떄, 이거 진짜 난제였는데, 이제는 훅훅 푸는 나를 보니 실력이 늘은 것 같아서 좋다. // // main.swift // algorithm // // Created by Hamlit Jason on 2021/11/15. // https://programmers.co.kr/learn/courses/30/lessons/12949 import Foundation func solution(_ arr1:[[Int]], _ arr2:[[Int]]) -> [[Int]] { // print(arr1.count) // print(arr2.count) var answer : [[Int]] = Array(repeating: Array(repeating: 1..

[프로그래머스] 60057 문자열 압축 Swift

✅ 이번 시간에는 프로그래머스 문제 알아보자. https://programmers.co.kr/learn/courses/30/lessons/60057 코딩테스트 연습 - 문자열 압축 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문 programmers.co.kr 🟠 풀이는 이것이 코딩테스트다 - 파이썬 이 책 참고함. 내가 이 문제가 엄청 어려웠던 이유가 있는데, 내가 문제를 꼼꼼하게 읽지 않는다는 점. 예를 들면, 나는 "abbcbbc" 라는 문자열이 존재할 경우 "a2bbc"로 압축되어서 길이가 5가 나오는 것이 최적의 압축 방법이자 정답이라고 생각했으나, 문제에..

[프로그래머스] Swift 숫자 문자열과 영단어 (81301)

✅ 이번 시간에는 프로그래머스에서 푼 문제 하나를 그냥 올려두려고 느낀점도 많음! ✅ 문자열에서 index참조하는게 매번 엄청나게 고민인데, 이번에 확실하게 정리해서 좋았어. 다른 사람의 코드도 꼭 확인해보자. 🔶 문자열에서 index 찾는 방법 프로세스 index찾아서 접근해야 함으로 유의하기 // // main.swift // algorithm // // Created by Hamlit Jason on 2021/10/28. // /* 카카오 블라인드 - 숫자 문자열과 영단어 https://programmers.co.kr/learn/courses/30/lessons/81301 */ import Foundation func solution(_ s:String) -> Int { var answer = ""..

[프로그래머스] 조이스틱 Swift (Greedy)

✅이번에는 조이스틱 문제에 대해서 알아보자. 코테 시작한지 얼마 안되서 아직도 어려움.. ㅜ 문제를 보자마자, 어..? 이건 쉽다...! 했었는데 막상 풀다보니까 무언가 잘못됨을 느낌. 일단 우로 이동만 있고, 좌로 이동하는 것에 대하여 이해를 아예 못했었는데, 다시 몇번 풀면서 나중에야 이해가 됨 ㅠㅠ 🔸 이 포스팅에서 주의깊게 봐야하는 점. ✅문자열을 map을 이용하여 name[0]으로 참조하는 기술 ✅문자를 아스키코드로 바꾸는 법 ✅코테용 사고방식 : 슬슬 느낌이 오기 시작했다...! 알고리즘 자체가 어렵지는 않다. 특히 상하 컨트롤 하는 경우는 이동의 값이 고정적인 부분이라 아주아주 쉬웠다. ✅코드 /* 조이스틱 https://programmers.co.kr/learn/courses/30/less..

[프로그래머스] 타겟넘버 Swift (DFS)

완전 기초라서 사실 어렵지는 않았는데, 그냥 문제 풀다가 한번 적어보고 싶어서 기록용으로 남김  난이도 자체는 크게 어렵다? 느껴질 정도는 아닌데, 알고리즘 놓은지가 너무 오래되어서 머릿속에서는 이렇게 저렇게 하면 되는데 코드로 어떻게 풀어내야 하는지 감이 잡히지 않았음 게다가 운영체제나 시스템 프로그래밍 AI에 최적화 된 OS를 만드는 것이 원래 가장 하고 싶은 연구라서 C언어를 주력으로 쓰고 있다가 ..취업하려면 우선 코테 먼저 뚫어야 그 담에 뭘 봐준다고 해서 Python 3으로 알고리즘 공부 하다가 ... iOS 개발의 경우에는 Swift 5로 언어 제한을 두는 곳도 생겨서 Swift 5로 ...  이런 과정을 거치면서 언어의 대혼란이 오는 시기인 것 같음 ㅠ 어떤 코테는 종이랑 펜도 불가능하다고..