#luoguP2729. [USACO3.2] 饲料调配 Feed Ratios

[USACO3.2] 饲料调配 Feed Ratios

本题没有可用的提交语言。

题目背景

农夫约翰从来只用调配得最好的饲料来喂他的奶牛。饲料用三种原料调配成:大麦,燕麦和小麦。他知道自己的饲料精确的配比,在市场上是买不到这样的饲料的。他只好购买其他三种混合饲料(同样都由三种麦子组成),然后将它们混合,来调配他的完美饲料。

题目描述

给出三组整数,每组整数表示一种饲料中大麦、燕麦与小麦的比例,找出用这三种饲料调配 x:y:zx:y:z 的饲料的方法。

请编写一个程序找出使这三种饲料用量最少的方案,要是不能用这三种饲料调配目标饲料,输出一行一个字符串 NONE。“用量最少”意味着三种饲料的用量(整数)的和必须最小。

例如,要求使用 1:2:31:2:33:7:13:7:12:1:22:1:2 的饲料调配 3:4:53:4:5 的饲料,我们可以通过 88 份第一种饲料、11 份第二种饲料和 55 份第三种饲料调配 77 份目标饲料。这是因为 8×1+1×3+5×2=218 \times 1 + 1 \times 3 + 5 \times 2 = 218×2+1×7+5×1=288 \times 2 + 1 \times 7 + 5 \times 1 = 288×3+1×1+5×2=358 \times 3 + 1 \times 1 + 5 \times 2 = 35,而 21:28:3521:28:35 恰好等于 3:4:53:4:5

输入格式

第一行,三个整数 x,y,zx,y,z,表示目标饲料中大麦、燕麦与小麦的比为 x:y:zx:y:z

接下来三行,第 ii 行三个整数 ai,bi,cia_i,b_i,c_i,表示第 ii 种饲料中大麦、燕麦与小麦的比为 ai:bi:cia_i:b_i:c_i

数据保证输入的所有整数在 0990 \sim 99 之间,且每一行的三个整数不会同为 00

输出格式

如果能够用这三种饲料调配出目标饲料,则输出一行 44 个整数,前三个整数 m,n,pm,n,p 分别代表三种饲料的份数,第四个整数代表得到目标饲料的份数。如果有多解,输出 m+n+pm+n+p 最小的一组。如果不能用这三种饲料调配出目标饲料,输出一行一个字符串 NONE。数据保证如果有解, m+n+pm+n+p 最小的解只有一组。

3 4 5
1 2 3
3 7 1
2 1 2 
8 1 5 7

提示

题目翻译来自NOCOW。

USACO Training Section 3.2