본문 바로가기

전체 글

(39)
[TIL] 24.04.19 FRI #Morning Algorithm 프로그래머스 주차 요금 계산 - 해결 - 50분 - 단순 구현이지만 요구사항이 많아 시간이 오래걸림 - ceil(), floor(), round() 중 ceil을 처음 사용해봄(문제 해결에 있어서) - Dictionary nil 체크를 nil coalesing으로 가능: dict[0] = (dict[0] ?? (Default)) + (assign) - 시간 계산 로직: 종료 시각(00:00부터 분으로 환산)은 양수로 시작 시각은 음수로 계산해 합산, 총 시간이 음수면 23:59를 더함
[TIL] 24.04.18 THU #프로그래머스 k진수 소수 개수 구하기 - 해결 - 40분 - 이전에 풀어본거 같은 기억이 있었음 - 소수 판별 로직에서 divider의 범위를 n/2로만 했는데 Int(sqrt(Double(n)))로 바꾸어 시간초과 해결
[TIL] 24.04.17 WED #Morning Algorithm 프로그래머스 피로도 - 재귀함수를 사용해 완전탐색으로 해결 - 로직 다시 이해해볼 필요있음 프로그래머스 타겟넘버 - 해결 - 50분 - 순서가 변경되지 않으므로 +, - 각각 2의 n승만큼 표를 만들어 표를 돌며 모든 경우를 체크, 값이 일치하면 count + 1 UIKit - snapkit - 기준이 되는 뷰를 몰라도 바로 superview로 접근해 편리하게 사용할 수 있다
[TIL] 24.04.16 TUE #Morning Algorithm 프로그래머스 피로도 - 미해결 - 그리디로 해결하려 했으나 불가능 - DFS로 완전 탐색후 해결해야 할 듯 - 추후 정리
[TIL] 24.04.15 MON #Morning Algorithm 프로그래머스 프로세스 - 해결 - 40분 - 해결 로직을 떠올리는데 오래걸림 - 배열을 queue처럼 사용(index를 바꿔주는 식으로 구현)
[TIL] 24.04.12 FRI #Morning Algorithm 프로그래머스 할인 행사 - 40분 - 문제 이해 부족 (회원가입 하는 가장 빠른 날이 아닌 회원가입 할 수 있는 모든 날) - Dictionary == equatable 비교 사용 - key, value 가 모두 일치 하면 같은 것 - let letterCount = letters.reduce(into: [:]) {counts, letter in counts[ letter, default: 0 ] += 1 } 사용을 까먹음
[TIL] 24.04.11 THU #Morning Algorithm 프로그래머스 n^2 배열 자르기 - 해결 - 30분 - 이중 for 문으로 구현했으나 시간 초과로 풀이법 고민 -> max(i/n, i%n)으로 해결 - for 문에서 range를 하는것 대신 Range.map 으로 바로 접근 가능 #CoreData - 코어데이터에서 Array 나 custom type을 저장하고 싶을 때 codegen을 생성하여 직접 타입을 잡아준다 -> 이때 Entity의 Class 이름대로 생성이되는데 생성된 Class Name과 Entity의 Inspecter창에 적혀있는 Class Name을 수정하면 안된다 Fatal error: NSArray element failed to match the Swift Array Element type in c..
[TIL] 24.04.09 TUE #Morning Algorithm 프로그래머스 H-Index - 해결 - 30분 - 기존에 풀어본 문제였지만 다시 풀어봄 - 기존에 풀때와 똑같은 곳에서 실수(문제 이해 부족) - 인용수가 높은 논문만 몇개 있을 때(index가 인용수 보다 크지 않지만 count 해야함) - 핵심은 개수가 인용수보다 작거나 같을때 -> index를 할당하는 방식으로 해결해야함