결과를 StringBuilder로 안하고 +로 하여 시간초과가 계속 나서 고생했던 문제.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | import java.io.BufferedReader import java.io.InputStreamReader import java.util.* fun main(args: Array<String>) { val br = BufferedReader(InputStreamReader(System.`in`)) repeat(br.readLine()!!.toInt()) { val str = br.readLine()!! val res = LinkedList<Char>() var now = 0 for (i in 0 until str.length) { when (str[i]) { '<' -> if (now != 0) now-- '>' -> if (now != res.size) now++ '-' -> if (now != 0 && !res.isEmpty()) res.removeAt(--now) else -> res.add(now++, str[i]) } } val ans = StringBuilder() for (ch in res) { ans.append(ch) } println(ans) } } | cs |
'BOJ(백준)' 카테고리의 다른 글
[BOJ] 백준 9576번 책 나눠주기 (0) | 2018.11.22 |
---|---|
[BOJ] 백준 11066번 파일 합치기 by Kotlin (0) | 2018.11.21 |
[BOJ] 백준 8983번 사냥꾼 by Kotlin (0) | 2018.11.20 |
[BOJ] 2170번 선 긋기 by Kotlin (0) | 2018.11.13 |
[BOJ] 1017번 소수 쌍 by Kotlin (0) | 2018.10.07 |