[Swift] 백준 10026 적록색약
·
📝 코테/BOJ
import Foundation let N = Int(readLine()!)! var board = [[String]]() let dx = [0, 0, -1, 1] let dy = [-1, 1, 0, 0] // 상하좌우 var cnts = [0, 0] for _ in 0..
[Swift] 동적 계획법 (Dynamic Programming) 이해하기
·
💻 CS/알고리즘
이 게시글은 개인적인 공부를 위해 작성된 게시물입니다. 이 글의 모든 출처는 https://babbab2.tistory.com/100 입니다. 동적 계획법 상향식 접근법으로 가장 작은 부분의 해답을 구한 후, 이를 저장하여 저장한 값을 이용해 상위 문제를 풀어가는 방법 동적 계획의 핵심은 Memoization(메모이제이션)이라는 기법인데 설명은 아래와 같습니다. 메모이제이션 동일한 계산을 반복해야할 때, 이전에 계산한 값을 메모리에 저장한 후 반복수행을 제거하여 프로그램 실행속도를 빠르게 하는 기법 피보나치 수열로 이해하기 0, 1, 2, 3, 5, 8, 13 ... 이런식으로 가장 처음 0, 1을 제외하고 내 앞의 두 놈을 더해서 나를 만드는 것이 피보나치 수열입니다. 재귀함수를 이용한 구현 func ..
[Swift] 백준 11399 ATM
·
📝 코테/BOJ
import Foundation /// N : ATM앞에 줄 서 있는 사람 수 /// P : i번째 사람이 돈을 인출하는데 걸리는 시간 let N = Int(readLine()!)! var Ps = readLine()!.components(separatedBy: " ").map { Int($0)! } Ps.sort() var sum = 0 var result = 0 for Pi in Ps { sum += Pi result += sum } print(result)
JerryiOS
Jerry