我正在 Hackerrank 上进行 30 天的 Kotlin 代码测试,但我被困在了第 7 天。
如何在一行上读取多个整数?
如何添加到数组中并反向显示?
我已经用 Java 解决了这个问题,但缺乏 Kotlin 中所需的语法
输入:
4
1 4 3 2
我的代码:
fun main(args: Array<String>) {
val n = readLine()!!.toInt()
var arr = Array(n)
for(i in 0 until n)
{
arr[i] = readLine()!!.toInt() //Not Working? nor does readLine()!!.split(' ').toInt()
}
for(item in arr.size - 1 downTo 0)
{
print("${item} ")
}
}
Run Code Online (Sandbox Code Playgroud)
编辑:问题已从原始问题更新
问题是readLine()将从 stdin 读取整行,因此每次调用readLine()for 循环时都会导致每次读取单独的行。
一种方法是读取该行,然后拆分每个值并将其映射到 Int。
readLine()?.let {
val numOfValues = it.toInt()
println(numOfValues)
readLine()?.let { line ->
line.split(" ").map {
it.toInt()
}.reversed().forEach {
println(it)
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7387 次 |
| 最近记录: |