[USACO 2.1.4] Healthy Holsteins

[题目描述]

Healthy Holsteins

健康的好斯坦奶牛

农民JOHN以拥有世界上最健康的奶牛为骄傲。他知道每种饲料中所包含的的牛所需的最低的维他命量是多少。请你帮助农夫喂养他的牛,以保持他们的健康,使喂给牛的饲料的种数最少。
给出牛所需的最低的维他命,输出喂给牛需要哪些种类的饲料,且所需的种类数最少。

PROGRAM NAME: holstein

INPUT FORMAT

第1行:一个整数V(1<=V<=25),表示需要的维他命的种类数。
第2行:V个整数(1<=每个数<=1000),表示牛每天需要的维他命的最小量。
第3行:一个整数G(1<=G<=15),表示可用来喂牛的饲料的数量。下面G行,第i行表示编号为i饲料包含的各种维他命的量的多少。

SAMPLE INPUT (file holstein.in)
4
100 200 300 400
3
50 50 50 50
200 300 200 300
900 150 389 399

OUTPUT FORMAT
输出文件只有一行,包括:

  • 牛必需的最小的饲料种数P
  • 后面有P个数,表示所选择的饲料编号(按从小到大排列)。

SAMPLE OUTPUT (file holstein.out)
2 1 3 


[解题思路]

直接回溯裸枚,2^15裸过...


[Code]

{
ID: zane2951
PROG: holstein
LANG: PASCAL
}

program holstein;
var
   w:array[0..51,0..51] of longint;
   v,q,qq:array[0..51] of longint;
   ans,n,m,i,j,top:longint;

//---------check-----------
function check:boolean;
var
   i,j,ce:longint;

begin
   for i:=1 to n do
      begin
         ce:=0;
         for j:=1 to top do ce:=ce+w[q[j],i];
         if cem then
      begin
         if check and (top


你可能感兴趣的:(USACO)