https://www.acmicpc.net/problem/2579 계단의 점화식 문제.특정 계단에서 얻을 수 있는 점수는 다음과 같다.n-1, n 이렇게 연속적으로 접근n-2, n 이렇게 떨어져서 접근따라서 다음과 같은 점화식이 세워짐dp[i-3]+stair[i-1]+stait[i] (연속적으로 계단에 접근한 경우)dp[i-2]+stair[i] (비연속적으로 계단에 접근한 경우)import Foundationlet n = Int(readLine()!)!var stairtArr: [Int] = []for _ in 0..
https://www.acmicpc.net/problem/2805 이분 탐색을 이용하여 자르는 부분의 범위를 구하는 문제. import Foundationlet nm = readLine()!.split(separator: " ").map{Int($0)!}let treeArr = readLine()!.split(separator: " ").map{ Int($0)! }var start = 1var end = treeArr.max()!while start mid { count += tree-mid } } if count >= nm[1] { start = mid+1 } else { end = mid-1 }}print(end)
https://www.acmicpc.net/problem/1697 문제 풀이bfs로 최단 경로를 탐색하는 방식으로 풀이. 각 점마다 +1, -1, *2씩 해주므로 한번 방문한 점은 다시 방문할 필요가 없으므로 방문처리를 하여 문제를 해결. import Foundationstruct Node { let count: Int let location: Int}let nk = readLine()!.split(separator: " ").map{ Int($0)! }var visited = Array(repeating: false, count: 100001)func solution() { var queue: [Node] = [.init(count: 0, location: nk[0])] if nk..
면접 때 받은 질문인데... 머리로는 이해하고 있지만, 막상 입으로 설명하려고 하니 뭐라 설명할지 모르겠어서 이참에 정리해 본다. Opaque Type이란?protocol의 associated type의 타입을 모르는 상태에서 객체의 기능을 사용하는 타입이다. 제네릭의 반대라고 생각하면 편하다. 무슨 소리냐면.. 제네릭을 사용할 때는 구현부에서 어떤 타입을 사용할지 모르는 상태로 구현한다.class Stack { var arr: [T] init(arr: [T]) { self.arr = arr } func input(_ obj: T) { arr.append(obj) }}그 후 사용 및 호출하는 쪽에서 상세한 타입을 지정한다.let stack..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.