首页 > 试题广场 >

单组_二维字符数组

[编程题]单组_二维字符数组
  • 热度指数:13485 时间限制:C/C++ 3秒,其他语言6秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
给定一个 nm 列的二维字符数组 a ,第 i 行第 j 列元素的值为 a_{i,j}
请你对行和列都倒置,然后输出之。

输入描述:
第一行有两个整数 n\ (\ 1 \leq n \leq 10^3\ )m\ (\ 1 \leq m \leq 10^3\ )
随后 n 行,每行有 m 个字符,仅包含小写英文字符 。


输出描述:
输出一个二维字符数组。
示例1

输入

3 4
abcd
efgh
ijkl

输出

lkji
hgfe
dcba
func main() {
    var n,m int
    fmt.Scan(&n,&m)

    a := make([][]byte,n)
    for i := 0;i < n;i++{
        a[i] = make([]byte, m)
    }

    for i := 0;i < n;i++{
        var s string
        fmt.Scan(&s)
        for j := 0;j < m;j++{
            a[i][j] = s[j]
        }
    }
    for i := 0;i < n / 2;i ++{
        a[i],a[n-1-i] = a[n-1-i],a[i]
    }
    for i := 0;i < n;i++{
        for j := 0;j < m / 2;j++{
            a[i][j],a[i][m-1-j] = a[i][m-1-j],a[i][j]
        }
    }
    for i := 0;i < n;i++{
        fmt.Println(string(a[i]))
    }
}

发表于 2025-08-20 09:47:26 回复(0)