목록백준 알고리즘 문제 기록 (74)
Where who wants to meet someone
난이도 브론즈 IV 문제 https://www.acmicpc.net/problem/24723 24723번: 녹색거탑 Naver D2를 아시나요? D2는 For Developers, By Developers의 약자로, 개발자들을 위해 개발자들이 직접 만들어 가고 있는 네이버 개발자 지원 프로그램입니다. 네이버가 축적한 기술과 지식을 공유하고, 외 www.acmicpc.net 내 답안 import Foundation print(pow(Decimal(2), Int(readLine()!)!)) 각 높이에서 발생하는 경우의 수를 정리하면 다음과 같다. 1층 -> 2가지 방법 2층 -> 4가지 방법 3층 -> 8가지 방법 4층 -> 16가지 방법 층이 올라갈수록 2의 제곱만큼 방법이 늘어나기 때문에 2의 n제곱 만..
난이도 브론즈 IV 문제 https://www.acmicpc.net/problem/15439 15439번: 베라의 패션 베라는 상의 N 벌과 하의 N 벌이 있다. i 번째 상의와 i 번째 하의는 모두 색상 i를 가진다. N 개의 색상은 모두 서로 다르다. 상의와 하의가 서로 다른 색상인 조합은 총 몇 가지일까? www.acmicpc.net 내 답안 let n = Int(readLine()!)! print(n * (n - 1)) 서로 다른 조합을 가지기 위해서는 전체 가짓수 * (전체 가짓수 - 1) 을 보면 된다. 각 색상별로 다른 조합을 가지려면 전체 가짓수에서 자신의 색을 제외해야 하기 때문.
난이도 실버 V 문제 https://www.acmicpc.net/problem/11866 11866번: 요세푸스 문제 0 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 1,000) www.acmicpc.net 내 답안 let input = readLine()!.split(separator: " ").map { Int($0)! } var queue = [Int]() var result = [Int]() var position = input[1] for i in 1...input[0] { queue.append(i) } while !queue.isEmpty { if queue.count == 1 { result.append(queue.popLast()!) break }..
난이도 실버 IV 문제 https://www.acmicpc.net/problem/2164 2164번: 카드2 N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 www.acmicpc.net 내 답안 var firstQueue = [Int]() var secondQueue = [Int]() for i in 1...Int(readLine()!)! { firstQueue.append(i) } func pop() -> Int? { if secondQueue.isEmpty { secondQueue = firstQueue.reversed() firstQueue.remov..
난이도 실버 III 문제 https://www.acmicpc.net/problem/12789 12789번: 도키도키 간식드리미 인하대학교 학생회에서는 중간, 기말고사 때마다 시험 공부에 지친 학우들을 위해 간식을 나눠주는 간식 드리미 행사를 실시한다. 승환이는 시험 기간이 될 때마다 간식을 받을 생각에 두근두 www.acmicpc.net 내 답안 var waitingLine = [Int]() var currentOrder = 1 var isSafe = true let forwardPeopleCount = Int(readLine()!)! var messedLine: [Int] = readLine()!.split(separator: " ").map { Int($0)! }.reversed() while cur..