题解 | #二维数组操作#

二维数组操作

https://www.nowcoder.com/practice/2f8c17bec47e416897ce4b9aa560b7f4

package main

import (
    "fmt"
)

func main() {
    for {
        var row, col int
        n, _ := fmt.Scan(&row, &col)
        if n != 2 {
            break
        }

        // fmt.Printf("++++++++++++n:%d\n", n)

        // 初始化成功
        fmt.Println(0)

        // 判断交换的行列值是否合法
        var startRow, startCol, endRow, endCol int
        fmt.Scan(&startRow, &startCol, &endRow, &endCol)
        
        if startRow >= row || startCol >= col || endRow >= row || endCol >= col {
            fmt.Println(-1)
        } else {
            fmt.Println(0)
        }

        // 判断插入行是否成功
        var insertRow int
        fmt.Scan(&insertRow)
        if insertRow > row || row > 8 {
            fmt.Println(-1)
        } else {
            fmt.Println(0)
        }

        // 判断插入列是否成功
        var insertCol int
        fmt.Scan(&insertCol)
        // fmt.Printf("=====insertCol: %d, col: %d\n", insertCol, col)
        if insertCol >= col || col > 8 {
            fmt.Println(-1)
        } else {
           fmt.Println(0)
        }

        // 判断查询的坐标是否合法
        var x, y int
        fmt.Scan(&x, &y)
        if x >= row || y >= col {
            // fmt.Printf("x:%d,row:%d,y:%d,col:%d\n", x, row, y, col)
            // fmt.Println("5-------")
            fmt.Println(-1)
        } else {
            fmt.Println(0)
        }
    }
}
// 本题每行输入的都是整型数组,所以采用:fmt.Scan(&x, &y)

全部评论

相关推荐

10-30 23:23
已编辑
中山大学 Web前端
去B座二楼砸水泥地:这无论是个人素质还是专业素质都👇拉满了吧
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务