#ATarc112f. [ARC112F] Die Siedler

[ARC112F] Die Siedler

题目描述

すぬけ君正在玩一个使用 11nn 号卡牌共 nn 种卡牌的游戏。这个游戏中有 mm 种卡包,第 ii 种卡包中包含卡牌 jj 的数量为 si,js_{i,j}。每个卡包中至少有 11 张卡牌。

最开始,すぬけ君拥有卡牌 jj 的数量为 cjc_j(保证他总共至少有 11 张卡牌)。

すぬけ君可以按照任意顺序、任意次数进行以下操作:

  • 获得一个卡包:选择 i=1,,mi=1,\dots,m 中的一个卡包,获得该卡包中包含的所有卡牌。
  • 交换卡牌:选择 j=1,,nj=1,\dots,n 中的一个卡牌,弃掉 2j2j 张卡牌 jj,获得 11 张卡牌 ((j mod n)+1)((j\ \text{mod}\ n)+1)。(必须拥有至少 2j2j 张卡牌 jj 才能进行此操作。)

すぬけ君希望使自己持有的卡牌总数尽可能少。请你求出他能够达到的卡牌总数的最小值。

输入格式

输入按以下格式从标准输入读入。

nn mm c1c_1 c2c_2 \dots cnc_n
s1,1s_{1,1} s1,2s_{1,2} \dots s1,ns_{1,n}
\vdots
sm,1s_{m,1} sm,2s_{m,2} \dots sm,ns_{m,n}

输出格式

请输出すぬけ君能够达到的卡牌总数的最小值。

样例 1

输入

3 1
0 3 5
0 1 0

输出

1

样例 2

输入

5 2
0 0 1 7 0
0 3 2 0 0
1 0 4 0 0

输出

2

样例 3

输入

12 10
0 2 4 4 1 5 6 8 0 9 18 19
1 2 4 3 4 0 6 10 9 18 5 7
0 3 0 1 1 4 11 13 9 19 9 10
1 2 4 1 5 8 1 6 15 0 11 1
0 2 0 6 9 3 13 14 16 9 14 14
1 3 2 5 6 1 9 7 1 7 6 22
0 0 4 5 2 3 8 3 13 14 17 4
0 3 3 4 0 7 0 9 14 2 17 14
0 2 4 1 3 3 3 14 17 6 15 13
0 0 1 0 1 0 4 5 9 4 17 17
1 2 1 3 5 7 0 13 7 6 1 0

输出

9

说明/提示

限制条件

  • 2n162 \leq n \leq 16
  • 1m501 \leq m \leq 50
  • 0si,j, cj<2j0 \leq s_{i,j},\ c_j < 2j
  • c1+c2++cn>0c_1 + c_2 + \dots + c_n > 0
  • si,1+si,2++si,n>0s_{i,1} + s_{i,2} + \dots + s_{i,n} > 0

样例解释 1

(a1,a2,a3)(a_1, a_2, a_3) 表示分别持有 a1a_1 张卡牌 11a2a_2 张卡牌 22a3a_3 张卡牌 33。可以按如下方式操作,将卡牌总数变为 11 张:

  • 获得第 11 种卡包后,状态为 (0,4,5)(0,4,5)
  • 选择 j=2j=2 进行卡牌交换,状态变为 (0,0,6)(0,0,6)
  • 选择 j=3j=3 进行卡牌交换,状态变为 (1,0,0)(1,0,0)

无法将卡牌总数变为 00,因此 11 是最小值。

样例解释 2

先获得第 22 种卡包两次,再获得第 11 种卡包,然后多次进行卡牌交换,可以使得只持有 11 张卡牌 4411 张卡牌 55

由 ChatGPT 4.1 翻译