蛇形填数解法

1 2 6 7 15 ...

3 5 8 14 ...

4 9 13 ...

10 12 ...

11 ... ...

请你计算矩阵中第 2020 行第 2020 列的数是多少?

第一行第一列是1,第二行第二列是5,第三行第三列是13

即1,5,13,25,41....

规律:n1 = 1 + 4 * 0(第一行)

n2 = n1 + 4 * 1(第二行)

n3 = n2 + 4 * 2(第三行)

.....

n = n + 4 * (行数 - 1) 这是最后的数字的规律

这样就可以推出第一行的每一个数的值与他所在的列数有关, 如果是奇数列到偶数列那么偶数列的值就是奇数列的值加 1, 如果是偶数列到奇数列那么奇数列的值就是加上 偶数列的列数减一 加 奇数列的数;

​
public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
       int n = 1;
        for (int i = 0; i < 25; i++) {
            n = n + 4 * i;
            if (i == 19) {
                System.out.println(n);
                break;
            }
        }
        scan.close();
    }
}

​

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值