#jag2017summerday3g. [jag2017summer_day3_g]Low Range-Sum Matrix
[jag2017summer_day3_g]Low Range-Sum Matrix
问题描述
你在一个宴会上收到了一张卡片。卡片上写着一个 行 列的矩阵以及两个整数 和 。矩阵中的所有元素都是整数,第 行从上往下数第 列的整数用 表示。
你可以从矩阵中选择最多 个元素并改变这些元素的符号。如果你可以得到一个满足条件的矩阵,即不存在连续的垂直或水平子序列使得其和大于 ,那么你就可以用这张卡片换取奖品。
你的任务是确定是否可以用给定的卡片换取奖品。
输入
输入包含一个测试用例,格式如下:
第一行包含四个整数 、、 和 (, , )。接下来的 行表示卡片上的矩阵。第 行由 个整数 、、、 () 组成。
输出
如果你可以用这张卡片换取奖品,则输出 Yes
。否则,输出 No
。
示例输入 1
3 3 2 10
5 3 7
2 6 1
3 4 1
示例输出 1
Yes
水平连续子序列从 到 的和为 。垂直连续子序列从 到 的和为 。如果你改变 的符号,就不会存在水平或垂直的连续子序列使得其和大于 。
示例输入 2
2 3 1 5
4 8 -2
-2 -5 -3
示例输出 2
Yes
示例输入 3
2 3 1 5
9 8 -2
-2 -5 -3
示例输出 3
No
示例输入 4
2 2 3 100
0 0
0 0
示例输出 4
Yes