Mandando pra thais

 avatar
unknown
kotlin
2 years ago
1.0 kB
2
Indexable
fun decodeString(numberOfRows: Int,encodedString: String ) {
    var mutableString = encodedString
    var numberOfArrays = (encodedString.length / numberOfRows)
    var list: MutableList<MutableList<Char>> = mutableListOf()
    for (i in 1..numberOfRows) {
        list.add(mutableListOf())
    }
    for (charList in list){
        var iterator = 0
        for (char in mutableString) {
            charList.add(char)
            iterator += 1
            if (iterator == numberOfArrays) {
                break
            }
        }
        mutableString = mutableString.drop(numberOfArrays)
    }

    var solutionList = mutableListOf<Char>()

    for (i in 0 until numberOfArrays) {
        for(x in 0 until numberOfRows){
            if (i+x > numberOfArrays-1) (
                    break
                )
            if (list[x].get(i+x) == '_'){
                solutionList.add(' ')
            } else {
            solutionList.add(list[x].get(i+x))}
        }

    }
    var string = solutionList.joinToString("").trim()
}
Editor is loading...