题解 | #放苹果#

放苹果

https://www.nowcoder.com/practice/bfd8234bb5e84be0b493656e390bdebf

import java.util.Scanner

fun main(args: Array<String>) {
     val read = Scanner(System.`in`)
    val res1 = read.nextLine().split(' ').map {
        it.toInt()
    }
    val m =res1[0]
    val n = res1[1]
    val dp = Array(m + 1) {index1 ->
        Array(n +1) {
            when {
                index1 ==0 ||it == 1 -> 1
                else -> 0
            }
        }
    }

    for (i in 1 .. m) {
        for (j in 1 .. n) {
            if (j>i) {
                dp[i][j] = dp[i][i]
            } else {
                dp[i][j] = dp[i-j][j] + dp[i][j-1]
            }
        }
    }
    println(dp[m][n])
}

全部评论

相关推荐

996的工作制还是没能硬啃下去,快要面试怂了,取消了
牛客80700350...:很正常,不是所有人都能接受这种强度的。不叫怯战,这叫明智
点赞 评论 收藏
分享
03-29 18:59
运城学院 Java
程序员小白条:咱们要对自己的简历和学历有清晰的认知,不要动不动就大厂了....都26届了,没实习还想着大厂,唉
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务