From 4ec59e05764870be13569cc95049d369023a0a8d Mon Sep 17 00:00:00 2001 From: Teddy Date: Sat, 2 Jul 2022 02:14:42 +0900 Subject: [PATCH 1/7] =?UTF-8?q?feat:=20=ED=94=84=EB=A6=B0=ED=84=B0?= =?UTF-8?q?=ED=81=90=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...4\353\246\260\355\204\260 \355\201\220.kt" | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 "src/7week/dongho/\355\224\204\353\246\260\355\204\260 \355\201\220.kt" diff --git "a/src/7week/dongho/\355\224\204\353\246\260\355\204\260 \355\201\220.kt" "b/src/7week/dongho/\355\224\204\353\246\260\355\204\260 \355\201\220.kt" new file mode 100644 index 0000000..b4c9e92 --- /dev/null +++ "b/src/7week/dongho/\355\224\204\353\246\260\355\204\260 \355\201\220.kt" @@ -0,0 +1,40 @@ +package `7week`.dongho + +import java.io.* +import java.util.* + +fun main() { + val br = BufferedReader(InputStreamReader(System.`in`)) + val bw = BufferedWriter(OutputStreamWriter(System.out)) + val printerQueue: Queue> = LinkedList>() + val N = br.readLine().toInt() + for (i in 0 until N) { + val select = br.readLine().split(" ")[1].toInt() + val docList: List> = br.readLine().split(" ").mapIndexed { index, v -> Pair(v.toInt(), index) } + printerQueue.addAll(docList) + + var printCnt = 0 + var check: Boolean + var print: Pair + do { + check = true + print = printerQueue.poll() + for (afterPrint in printerQueue) { + if (afterPrint.first > print.first) { + check = false + break + } + } + if (check) { + printCnt++ + } else { + printerQueue.add(print) + } + } while (!printerQueue.isEmpty() && !(check && print.second === select)) + + bw.write("$printCnt\n") + printerQueue.clear() + } + bw.flush() + bw.close() +} \ No newline at end of file From 7b93bcc1df740f9504b86c4931fda910c10ac393 Mon Sep 17 00:00:00 2001 From: Teddy Date: Sat, 2 Jul 2022 02:40:14 +0900 Subject: [PATCH 2/7] =?UTF-8?q?feat:=20=EC=87=A0=EB=A7=89=EB=8C=80?= =?UTF-8?q?=EA=B8=B0=20=ED=92=80=EC=9D=B4=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...40\353\247\211\353\214\200\352\270\260.kt" | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 "src/7week/dongho/\354\207\240\353\247\211\353\214\200\352\270\260.kt" diff --git "a/src/7week/dongho/\354\207\240\353\247\211\353\214\200\352\270\260.kt" "b/src/7week/dongho/\354\207\240\353\247\211\353\214\200\352\270\260.kt" new file mode 100644 index 0000000..dd513e1 --- /dev/null +++ "b/src/7week/dongho/\354\207\240\353\247\211\353\214\200\352\270\260.kt" @@ -0,0 +1,26 @@ +package `7week`.dongho + +import java.io.* +import java.util.* + +fun main() { + val br = BufferedReader(InputStreamReader(System.`in`)) + val stack: Stack = Stack() + var i = 1 + println(br.readLine().sumOf { + val result = if (it == '(') { + stack.push(i) + 0 + } else { + if (i - 1 == stack.peek()) { + stack.pop() + stack.size + } else { + stack.pop() + 1 + } + } + i++ + result + }) +} \ No newline at end of file From 8d44e31b9889678cefb9743fa1e87bbc37369529 Mon Sep 17 00:00:00 2001 From: Teddy Date: Sat, 2 Jul 2022 03:30:23 +0900 Subject: [PATCH 3/7] =?UTF-8?q?feat:=20=ED=81=AC=EB=A6=AC=EC=8A=A4?= =?UTF-8?q?=EB=A7=88=EC=8A=A4=20=EC=84=A0=EB=AC=BC=20=ED=92=80=EC=9D=B4=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...0\354\212\244 \354\204\240\353\254\274.kt" | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 "src/7week/dongho/\355\201\254\353\246\254\354\212\244\353\247\210\354\212\244 \354\204\240\353\254\274.kt" diff --git "a/src/7week/dongho/\355\201\254\353\246\254\354\212\244\353\247\210\354\212\244 \354\204\240\353\254\274.kt" "b/src/7week/dongho/\355\201\254\353\246\254\354\212\244\353\247\210\354\212\244 \354\204\240\353\254\274.kt" new file mode 100644 index 0000000..1c6dc33 --- /dev/null +++ "b/src/7week/dongho/\355\201\254\353\246\254\354\212\244\353\247\210\354\212\244 \354\204\240\353\254\274.kt" @@ -0,0 +1,26 @@ +package `7week`.dongho + +import java.io.* +import java.util.* + +fun main() { + val br = BufferedReader(InputStreamReader(System.`in`)) + var st: StringTokenizer + val N = br.readLine().toInt() + val q = PriorityQueue(Collections.reverseOrder()) + repeat(N) { + st = StringTokenizer(br.readLine()) + val a = st.nextToken().toInt() + if (a == 0) { + if (q.isEmpty()) { + println(-1) + } else { + println(q.poll()) + } + } else { + repeat(a) { + q.offer(st.nextToken().toInt()) + } + } + } +} \ No newline at end of file From 6844b2251af9021d8566926da5e9a9e28a6b8929 Mon Sep 17 00:00:00 2001 From: Teddy Date: Sat, 2 Jul 2022 03:31:58 +0900 Subject: [PATCH 4/7] fixed --- ...4\353\247\210\354\212\244 \354\204\240\353\254\274.kt" | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git "a/src/7week/dongho/\355\201\254\353\246\254\354\212\244\353\247\210\354\212\244 \354\204\240\353\254\274.kt" "b/src/7week/dongho/\355\201\254\353\246\254\354\212\244\353\247\210\354\212\244 \354\204\240\353\254\274.kt" index 1c6dc33..6ba7854 100644 --- "a/src/7week/dongho/\355\201\254\353\246\254\354\212\244\353\247\210\354\212\244 \354\204\240\353\254\274.kt" +++ "b/src/7week/dongho/\355\201\254\353\246\254\354\212\244\353\247\210\354\212\244 \354\204\240\353\254\274.kt" @@ -7,19 +7,19 @@ fun main() { val br = BufferedReader(InputStreamReader(System.`in`)) var st: StringTokenizer val N = br.readLine().toInt() - val q = PriorityQueue(Collections.reverseOrder()) + val pq = PriorityQueue(Collections.reverseOrder()) repeat(N) { st = StringTokenizer(br.readLine()) val a = st.nextToken().toInt() if (a == 0) { - if (q.isEmpty()) { + if (pq.isEmpty()) { println(-1) } else { - println(q.poll()) + println(pq.poll()) } } else { repeat(a) { - q.offer(st.nextToken().toInt()) + pq.offer(st.nextToken().toInt()) } } } From 1082a7a3b46e19ea343849d94a37c81e706435e8 Mon Sep 17 00:00:00 2001 From: Teddy Date: Sat, 2 Jul 2022 03:52:46 +0900 Subject: [PATCH 5/7] =?UTF-8?q?feat:=20=EC=8A=A4=ED=83=9D=20=EC=88=98?= =?UTF-8?q?=EC=97=B4=20=ED=92=80=EC=9D=B4=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...4\355\203\235 \354\210\230\354\227\264.kt" | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 "src/7week/dongho/\354\212\244\355\203\235 \354\210\230\354\227\264.kt" diff --git "a/src/7week/dongho/\354\212\244\355\203\235 \354\210\230\354\227\264.kt" "b/src/7week/dongho/\354\212\244\355\203\235 \354\210\230\354\227\264.kt" new file mode 100644 index 0000000..00c5834 --- /dev/null +++ "b/src/7week/dongho/\354\212\244\355\203\235 \354\210\230\354\227\264.kt" @@ -0,0 +1,29 @@ +package `7week`.dongho + +import java.io.* +import java.util.* + +fun main() { + val br = BufferedReader(InputStreamReader(System.`in`)) + val N = br.readLine().toInt() + val queue = LinkedList() + val answer = LinkedList() + repeat(N) { + queue.add(br.readLine().toInt()) + } + val stack = Stack() + repeat(N) { + stack.push(it + 1) + answer.add('+') + while (queue.isNotEmpty() && stack.isNotEmpty() && stack.peek() == queue.peek()) { + stack.pop() + queue.poll() + answer.add('-') + } + } + if (stack.isNotEmpty()) { + println("NO") + } else { + println(answer.joinToString("\n")) + } +} \ No newline at end of file From c33b18b8453707fdf912e30a305705a028bd9272 Mon Sep 17 00:00:00 2001 From: Teddy Date: Sat, 2 Jul 2022 04:05:33 +0900 Subject: [PATCH 6/7] =?UTF-8?q?feat:=20=EC=9A=94=EC=84=B8=ED=91=B8?= =?UTF-8?q?=EC=8A=A4=20=EB=AC=B8=EC=A0=9C=20=ED=92=80=EC=9D=B4=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...0\354\212\244 \353\254\270\354\240\234.kt" | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 "src/7week/dongho/\354\232\224\354\204\270\355\221\270\354\212\244 \353\254\270\354\240\234.kt" diff --git "a/src/7week/dongho/\354\232\224\354\204\270\355\221\270\354\212\244 \353\254\270\354\240\234.kt" "b/src/7week/dongho/\354\232\224\354\204\270\355\221\270\354\212\244 \353\254\270\354\240\234.kt" new file mode 100644 index 0000000..1d62ac7 --- /dev/null +++ "b/src/7week/dongho/\354\232\224\354\204\270\355\221\270\354\212\244 \353\254\270\354\240\234.kt" @@ -0,0 +1,23 @@ +package `7week`.dongho + +import java.io.* +import java.util.* + +fun main() { + val br = BufferedReader(InputStreamReader(System.`in`)) + val (N, K) = br.readLine().split(" ").map { it.toInt() } + val queue: Queue = LinkedList(IntRange(1, N).toList()) + var i = 1 + val answer = LinkedList() + while (queue.isNotEmpty()) { + val temp = queue.poll() + if (i == K) { + i = 1 + answer.add(temp) + } else { + queue.add(temp) + i++ + } + } + println("<${answer.joinToString(", ")}>") +} \ No newline at end of file From f63d78a9c799a705212cb3e60ee1357b1acfaceb Mon Sep 17 00:00:00 2001 From: Teddy Date: Sat, 2 Jul 2022 14:51:25 +0900 Subject: [PATCH 7/7] =?UTF-8?q?feat:=20=EA=B4=84=ED=98=B8=EC=9D=98=20?= =?UTF-8?q?=EA=B0=92=20=EA=B0=9C=EC=96=B4=EB=A0=B5=EB=84=A4=20(=ED=92=80?= =?UTF-8?q?=EB=8B=A4=EA=B0=80=20=EC=BD=94=EB=93=9C=20=EC=B0=B8=EA=B3=A0=20?= =?UTF-8?q?=EC=97=B4=EC=8B=AC=ED=9E=88=20=ED=95=A8)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...4\355\230\270\354\235\230 \352\260\222.kt" | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 "src/7week/dongho/\352\264\204\355\230\270\354\235\230 \352\260\222.kt" diff --git "a/src/7week/dongho/\352\264\204\355\230\270\354\235\230 \352\260\222.kt" "b/src/7week/dongho/\352\264\204\355\230\270\354\235\230 \352\260\222.kt" new file mode 100644 index 0000000..df99ed4 --- /dev/null +++ "b/src/7week/dongho/\352\264\204\355\230\270\354\235\230 \352\260\222.kt" @@ -0,0 +1,49 @@ +package `7week`.dongho + +import java.io.* +import java.util.* + +fun main() { + val br = BufferedReader(InputStreamReader(System.`in`)) + val string = br.readLine() + var flag = false + var answer: Long = 0 + var value = 1 + val stack = Stack() + for (i in 0 until string.length) { + if (string[i] == '(') { + stack.add(string[i]) + value *= 2 + } + if (string[i] == '[') { + stack.add(string[i]) + value *= 3 + } + if (string[i] == ')') { + if (stack.empty() || stack.peek() !== '(') { + flag = true + break + } + if (string[i - 1] == '(') { + answer += value.toLong() + } + stack.pop() + value /= 2 + } else if (string[i] == ']') { + if (stack.empty() || stack.peek() !== '[') { + flag = true + break + } + if (string[i - 1] == '[') { + answer += value.toLong() + } + stack.pop() + value /= 3 + } + } + if (flag || !stack.empty()) { + println(0) + } else { + println(answer) + } +} \ No newline at end of file