#ACM0079. CB的行李

CB的行李

题目描述

旅行者CB需要准备旅行衣物,每种衣物能提供不同维度的保暖值(如防风、防寒、防潮等)。请帮助小明选择最少种类的衣物,保证每种保暖维度的数值都不低于最低需求。

给出每种保暖维度的最低需求,输出需要携带的衣物种类,且所需衣物数量最少。

保暖值以整数表示,每种衣物最多只能携带一件,数据保证存在解。

输入格式

第一行一个整数 t (1t25)t\ (1\le t \le25),表示需要的保暖维度种类数。

第二行 tt 个整数 ai (1ai1000)a_i\ (1\le a_i \le 1000),表示每天需要的每种保暖维度的最小量。

第三行一个整数 c (1c15)c\ (1\le c\le 15),表示可选择的衣物种类数。

下面 cc 行,每行 tt 个整数 wi,j (1wi,j1000)w_{i,j}\ (1\le w_{i,j} \le 1000) 表示编号为 ii 的衣物的第 jj 个保暖维度的保暖值。

输出格式

输出文件只有一行,包括必需的最小衣物种数 pp;后面有 pp 个数,表示所选择的衣物编号(按从小到大排列)。

如果有多个解,输出衣物序号最小的(即字典序最小)。

输入输出样例 #1

输入 #1

4
100 200 300 400
3
50  50  50  50
200 300 200 300
900 150 389 399

输出 #1

2 1 3