Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 27 | 28 |
29 | 30 | 31 |
Tags
- back-end
- Brute-force
- 네트워크
- TDD
- 그래프
- Java8
- 알고리즘
- LEVEL2
- 자바
- 백준
- 코틀린
- 모던자바
- algorithm
- programmers
- 프로그래머스
- DFS
- backtracking
- 백트래킹
- 스프링
- 프로젝트
- DP
- baekjoon
- Spring
- OS
- BFS
- lambda
- kotlin
- 운영체제
- 자료구조
- java
Archives
- Today
- Total
요깨비's LAB
[백준, 문자열, Kotlin] P.17413 단어 뒤집기2 본문
import java.util.*
fun main() {
val scr = Scanner(System.`in`)
var str = scr.nextLine();
var len = str.length
var idx = 0
var startIdx = 0
var endIdx = 0
var result = ""
var substr = ""
var findIdx = 0
while(idx < len) {
if(str[0] == '<') {
findIdx = str.indexOf('>')
substr = str.substring(0, findIdx + 1)
result += substr
str = str.substring(findIdx + 1)
len = str.length
}
else {
findIdx = str.indexOfFirst {
it == '<'
}
var splitedStrs = emptyList<String>()
if(findIdx == -1) {
idx = len
substr = str.substring(0, len)
splitedStrs = substr.split(" ")
for(s in splitedStrs) {
result += s.reversed() + " "
}
val last = result.lastIndexOf(" ")
result = result.substring(0, last)
}else {
idx = findIdx
substr = str.substring(0, findIdx)
splitedStrs = substr.split(" ")
for(s in splitedStrs) {
result += s.reversed() + " "
}
val last = result.lastIndexOf(" ")
result = result.substring(0, last)
str = str.substring(findIdx)
len = str.length
idx = 0 // 요거 다시 생각
}
}
}
println(result)
}
Comments