[R56B] 复读机

  • 难度 入门
  • 时限 1s
  • 空限 512m
  • 模拟

数据规模:1≤n,k≤501 \le n, k \le 50,ss 只由小写字母组成。

思路

直接模拟:依次取出 ss 的每个字符,各重复输出 kk 次即可。输出串总长度为 n×k≤2500n \times k \le 2500,直接逐字符 print 输出,行尾 println() 补换行。

复杂度:时间 O(nk)O(nk),空间 O(nk)O(nk)。

仓颉实现

查看仓颉实现
import std.env.*
import std.convert.*

main() {
    let reader = getStdIn()
    let p = reader.readln().getOrThrow().split(" ", removeEmpty: true).map({ x: String => Int64.parse(x) })
    let k = p[1]
    let s = reader.readln().getOrThrow()
    for (r in s.runes()) {
        for (i in 0..k) {
            print(r)
        }
    }
    println()
}