#jag2017summerday3g. [jag2017summer_day3_g]Low Range-Sum Matrix

[jag2017summer_day3_g]Low Range-Sum Matrix

问题描述

你在一个宴会上收到了一张卡片。卡片上写着一个 NNMM 列的矩阵以及两个整数 KKSS。矩阵中的所有元素都是整数,第 ii 行从上往下数第 jj 列的整数用 A_i,jA\_{i,j} 表示。

你可以从矩阵中选择最多 KK 个元素并改变这些元素的符号。如果你可以得到一个满足条件的矩阵,即不存在连续的垂直或水平子序列使得其和大于 SS,那么你就可以用这张卡片换取奖品。

你的任务是确定是否可以用给定的卡片换取奖品。


输入

输入包含一个测试用例,格式如下:

NN MM KK SS A_1,1A\_{1,1} A_1,2A\_{1,2} \cdots A_1,MA\_{1,M} \vdots A_N,1A\_{N,1} A_N,2A\_{N,2} \cdots A_N,MA\_{N,M}

第一行包含四个整数 NNMMKKSS (1N,M101 \le N, M \le 10, 1K51 \le K \le 5, 1S1061 \le S \le 10^6)。接下来的 NN 行表示卡片上的矩阵。第 (i+1)(i+1) 行由 MM 个整数 A_i,1A\_{i,1}A_i,2A\_{i,2}\ldotsA_i,MA\_{i,M} (105A_i,j105-10^5 \le A\_{i,j} \le 10^5) 组成。


输出

如果你可以用这张卡片换取奖品,则输出 Yes。否则,输出 No


示例输入 1

3 3 2 10
5 3 7
2 6 1
3 4 1

示例输出 1

Yes

水平连续子序列从 A_1,1A\_{1,1}A_1,3A\_{1,3} 的和为 1515。垂直连续子序列从 A_1,2A\_{1,2}A_3,2A\_{3,2} 的和为 1313。如果你改变 A_1,2A\_{1,2} 的符号,就不会存在水平或垂直的连续子序列使得其和大于 SS


示例输入 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