์นดํ
๊ณ ๋ฆฌ ์์
[๋ฐฑ์ค ๋ฌธ์ ํ๊ธฐ] #5397๋ฒ - ํค๋ก๊ฑฐ with Python
kirr
2023. 10. 4. 00:23
๋ฌธ์
๐ป Code
import java.io.BufferedReader
import java.io.InputStreamReader
import java.util.*
fun main()= with(BufferedReader(InputStreamReader(System.`in`))){
val num = readLine().toInt()
val answer = mutableListOf<String>()
repeat(num) {
val lists = LinkedList<String>()
val str = readLine()
val count = lists.listIterator(lists.size) //์ด๊ธฐ listIterator ์์ฑ
str.forEach {
if (it.isLetterOrDigit()) { //์์ด์ด๊ฑฐ๋ ์ซ์์ธ ๊ฒฝ์ฐ
count.add(it.toString()) //ํ์ฌ ์ปค์๋ถ๋ถ์ ์ถ๊ฐ
}
else {
when (it.toString()) {
"<" -> { //"<"์ธ ๊ฒฝ์ฐ
if (count.hasPrevious()) { //๋งจ ์์ ์์นํ ๊ฒ์ด ์๋๋ผ๋ฉด
count.previous() //์ปค์ ์ผ์ชฝ์ผ๋ก ์ด๋
}
}
">" -> { //">"์ธ ๊ฒฝ์ฐ
if (count.hasNext()) { //๋งจ ๋ค์ ์์นํ ๊ฒ์ด ์๋๋ผ๋ฉด
count.next() //์ปค์ ์ค๋ฅธ์กฑ์ผ๋ก ์ด๋
}
}
"-" -> { //"-"์ธ ๊ฒฝ์ฐ
if (count.hasPrevious()) { //๋งจ ์์ ์์นํ ๊ฒ์ด ์๋๋ผ๋ฉด
count.previous() //์ปค์ ์ผ์ชฝ์ผ๋ก ์ด๋ ํ
count.remove() //์ ๊ฑฐ
}
}
}
}
}
answer.add(lists.joinToString().replace(", ", ""))
}
for(i in answer){
println(i)
}
}
[๋ฐฑ์ค ๋ฌธ์ ํ๊ธฐ] #1406๋ฒ - ์๋ํฐ with Kotlin
์์ง ์๊ณ ๋ฆฌ์ฆ ์ค๋ ฅ ๋ฉ์๋ค.. ์๋ง์ ๋ฐฉ๋ฒ์ผ๋ก ์ ํ ์ ๊ทผํ์ง ๋ชปํ๋คใ ๐คฆ๐ปโ๏ธ ๋ฌธ์ ๐๐ปโ๏ธ How to solve 1์ฐจ ์ ๊ทผ fun main() { val edit = readln().toList() var cursor = edit.size var result = edit.toMutableLi
dvlpseo.tistory.com
์ ๋ฌธ์ ์์ ํ์๋ ๊ฒ๊ณผ ๊ฐ์ด ListIterator์ ์ฌ์ฉํ์ฌ ํ์๋ค.
ํ๋ฒ ๊ฐ์ ์ตํ๋ ์ด ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ผ๋ง๋ ํธ๋ฆฌํ์ง ์๊ฒ๋์๋ค๐ฎ