Linked List(2)
-
백준 2346 - 풍선 터뜨리기(Swift) LinkedList로 구현
백준 2346 - 풍선 터뜨리기(Swift) LinkedList로 구현 2346번: 풍선 터뜨리기 입력 첫째 줄에는 자연수 N(1 ≤ N ≤ 1,000)이 주어진다. 두번째 줄에는 각 풍선 안의 종이에 적혀 있는 수가 주어진다. 종이에 0은 적혀있지 않다. 접근법 LinkedList로 구현하며, 풍선 안의 데이터와 테이터 순서를 저장하는 Node를 만든다. 풍선의 값이 양수일 경우 head와 tail을 옮겨줄 함수, 음수일 때 head와 tail을 옮겨줄 함수를 구현한다. 풍선을 터뜨리는 함수는 항상 head의 풍선만 터뜨리며 풍선 자체를 반환할 수 있게 만든다. 구현 Node(풍선)구현 class Node { let data: Int let number: Int var next: Node? var pr..
2023.01.11 -
백준 1158 - 요세푸스 문제(Swift): LinkedList구현!!
1158번: 요세푸스 문제 입력 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) 입력이 1이상, 5000이하의 자연수이기 때문에 0의 입력에 대한 문제를 처리할 필요가 없다!! Node구현 class Node { let value: Int var next: Node? var prev: Node? init(value: Int, prev: Node? = nil, next: Node? = nil) { self.value = value self.prev = prev self.next = next } } 위 사진처럼 값을 가지는 value프로퍼티와 이전 Node, 다음 Node를 가리켜주는 prev와 next를 하나의 Node로 구성하였다. LinkedList구현..
2023.01.08