백준/실버
-
https://www.acmicpc.net/problem/3986 3986번: 좋은 단어 이번 계절학기에 심리학 개론을 수강 중인 평석이는 오늘 자정까지 보고서를 제출해야 한다. 보고서 작성이 너무 지루했던 평석이는 노트북에 엎드려서 꾸벅꾸벅 졸다가 제출 마감 1시간 전에 www.acmicpc.net import Foundation func solution() { let iterator = Int(readLine()!)! var result = 0 for _ in 1...iterator { let inputs = readLine()! var stack: [Character] = [] for char in inputs { if stack.isEmpty { stack.append(char) continue ..
[Swift] 3986번 : 좋은 단어https://www.acmicpc.net/problem/3986 3986번: 좋은 단어 이번 계절학기에 심리학 개론을 수강 중인 평석이는 오늘 자정까지 보고서를 제출해야 한다. 보고서 작성이 너무 지루했던 평석이는 노트북에 엎드려서 꾸벅꾸벅 졸다가 제출 마감 1시간 전에 www.acmicpc.net import Foundation func solution() { let iterator = Int(readLine()!)! var result = 0 for _ in 1...iterator { let inputs = readLine()! var stack: [Character] = [] for char in inputs { if stack.isEmpty { stack.append(char) continue ..
2024.03.18 -
https://www.acmicpc.net/problem/4949 4949번: 균형잡힌 세상 각 문자열은 마지막 글자를 제외하고 영문 알파벳, 공백, 소괄호("( )"), 대괄호("[ ]")로 이루어져 있으며, 온점(".")으로 끝나고, 길이는 100글자보다 작거나 같다. 입력의 종료조건으로 맨 마지막에 www.acmicpc.net import Foundation func solution() { while let inputs = readLine(), inputs != "." { var stack: [Character] = [] for char in inputs { if !["[", "]", "(", ")"].contains(char) { continue } if char == "]" && stack.la..
[Swift] 4949번 : 균형잡힌 세상https://www.acmicpc.net/problem/4949 4949번: 균형잡힌 세상 각 문자열은 마지막 글자를 제외하고 영문 알파벳, 공백, 소괄호("( )"), 대괄호("[ ]")로 이루어져 있으며, 온점(".")으로 끝나고, 길이는 100글자보다 작거나 같다. 입력의 종료조건으로 맨 마지막에 www.acmicpc.net import Foundation func solution() { while let inputs = readLine(), inputs != "." { var stack: [Character] = [] for char in inputs { if !["[", "]", "(", ")"].contains(char) { continue } if char == "]" && stack.la..
2024.03.18 -
https://www.acmicpc.net/problem/2667 2667번: 단지번호붙이기 과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여 www.acmicpc.net import Foundation func solution() { let N = Int(readLine()!)! var block = 0 var result: [Int] = [] var visited: [[Bool]] = Array(repeating: Array(repeating: false, count: N), count: N) var apartmentBoard: [[Int]] = [] for _ ..
[Swift] 2667번 : 단지번호 붙이기https://www.acmicpc.net/problem/2667 2667번: 단지번호붙이기 과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여 www.acmicpc.net import Foundation func solution() { let N = Int(readLine()!)! var block = 0 var result: [Int] = [] var visited: [[Bool]] = Array(repeating: Array(repeating: false, count: N), count: N) var apartmentBoard: [[Int]] = [] for _ ..
2024.03.18 -
https://www.acmicpc.net/problem/2583 import Foundation func solution() { let inputs = readLine()! .components(separatedBy: " ") .compactMap { Int($0) } let N = inputs[1] let M = inputs[0] let K = inputs[2] var visited: [[Bool]] = Array(repeating: Array(repeating: false, count: M), count: N) var result: [Int] = [] for _ in 1...K { let inputs = readLine()! .components(separatedBy: " ") .compactMap..
[Swift] 2583번 : 영역 구하기https://www.acmicpc.net/problem/2583 import Foundation func solution() { let inputs = readLine()! .components(separatedBy: " ") .compactMap { Int($0) } let N = inputs[1] let M = inputs[0] let K = inputs[2] var visited: [[Bool]] = Array(repeating: Array(repeating: false, count: M), count: N) var result: [Int] = [] for _ in 1...K { let inputs = readLine()! .components(separatedBy: " ") .compactMap..
2024.03.18 -
https://www.acmicpc.net/problem/7562 7562번: 나이트의 이동 체스판 위에 한 나이트가 놓여져 있다. 나이트가 한 번에 이동할 수 있는 칸은 아래 그림에 나와있다. 나이트가 이동하려고 하는 칸이 주어진다. 나이트는 몇 번 움직이면 이 칸으로 이동할 수 www.acmicpc.net import Foundation typealias Position = (x: Int, y: Int) func +(lhs: Position, rhs: Position) -> Position { Position(lhs.x + rhs.x, lhs.y + rhs.y) } func solution() { let repetition = Int(readLine()!)! for _ in 1...repetition..
[Swift] 7672번 : 나이트의 이동https://www.acmicpc.net/problem/7562 7562번: 나이트의 이동 체스판 위에 한 나이트가 놓여져 있다. 나이트가 한 번에 이동할 수 있는 칸은 아래 그림에 나와있다. 나이트가 이동하려고 하는 칸이 주어진다. 나이트는 몇 번 움직이면 이 칸으로 이동할 수 www.acmicpc.net import Foundation typealias Position = (x: Int, y: Int) func +(lhs: Position, rhs: Position) -> Position { Position(lhs.x + rhs.x, lhs.y + rhs.y) } func solution() { let repetition = Int(readLine()!)! for _ in 1...repetition..
2024.03.18 -
https://www.acmicpc.net/problem/1012 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 www.acmicpc.net import Foundation var testCaseCount = Int(readLine()!)! for _ in 1...testCaseCount { solution() } func solution() { let inputs = readLine()! .components(separatedBy: " ") .compactMap { Int($0) } let N = inputs[0] let M = inputs[1]..
[Swift] 1012번 : 유기농 배추https://www.acmicpc.net/problem/1012 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 www.acmicpc.net import Foundation var testCaseCount = Int(readLine()!)! for _ in 1...testCaseCount { solution() } func solution() { let inputs = readLine()! .components(separatedBy: " ") .compactMap { Int($0) } let N = inputs[0] let M = inputs[1]..
2024.03.18 -
https://www.acmicpc.net/problem/1697 1697번: 숨바꼭질 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net import Foundation var demessions = readLine()! .split(separator: " ") .compactMap { Int($0) } let NotVisited = -1 let start = demessions.first! let end = demessions.last! var array = Array(repeating: NotVisit..
[Swift] 1697번 : 숨바꼭질https://www.acmicpc.net/problem/1697 1697번: 숨바꼭질 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net import Foundation var demessions = readLine()! .split(separator: " ") .compactMap { Int($0) } let NotVisited = -1 let start = demessions.first! let end = demessions.last! var array = Array(repeating: NotVisit..
2024.03.18 -
import Foundation var inputs = readLine()!.components(separatedBy: " ").compactMap { Int($0) } let n = inputs.first! let m = inputs.last! var boards: [[Bool]] = [] for _ in 0.. Int { let dx = [1, 0, -1, 0] let dy = [0, 1, 0, -1] var queue: [(Int, Int)] = [] var dist = Array(repeating: Array(repeating: -1, count: col), count: row) dist[0][0] = 1 queue.append((0,0)) while !queue.isEmpty { let (x, ..
[Swift] 2178번 : 미로탐색import Foundation var inputs = readLine()!.components(separatedBy: " ").compactMap { Int($0) } let n = inputs.first! let m = inputs.last! var boards: [[Bool]] = [] for _ in 0.. Int { let dx = [1, 0, -1, 0] let dy = [0, 1, 0, -1] var queue: [(Int, Int)] = [] var dist = Array(repeating: Array(repeating: -1, count: col), count: row) dist[0][0] = 1 queue.append((0,0)) while !queue.isEmpty { let (x, ..
2024.02.05