棋盘分割POJ_一个分割方向的问题


刘老师在讲这里说的第一个for循环是竖着切,从左至右,其中calSum(x1,y1,x2,y2)如下

calSum(x1,y1,x2,y2)用于计算两坐标构成的矩形内的总分
输入时也是按照二维数组的形式进行输入
在这里插入图片描述
那么最上面图中第一个for循环中的c值,就是[a+1][y1]到[x2][y2]构成的矩形内部的分数总和,自增的是矩形的左上角的坐标的x坐标,也就是二维数组的行数,y1不变,二维数组的列数不变,截取出来的矩形就是在变矮的,其实对应老师画的第二个for循环的图,是一个横向切割的;
在参考代码中加几句输出,在第一个for循环里每次都输出一下c和e计算出来的值,也就是截取出来的矩形中数据的总和,数据是8*8的,


可以看到第一次分割后是分成了56和10,全部数据总和为66;"其中一块儿的和“应该是横向切割后"下面一块儿“的数据总和,为56;”另一块儿的和“为10,是横向切割后”上面一块儿“的数据总和;后面的输出是继续切割56的”下面一块儿“,切割成了48和8,这个矩形第一行第一列结果一样,换一下测试数据

现在第二次调用fun的输出是48和9,先输出的依旧是下面一块儿,数据总和48,后输出的9是第二行的
1 1 1 1 1 1 2的和
如有错误感谢指正

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值