#593. 饲料调配 Feed Ratios

饲料调配 Feed Ratios

题目描述

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

给出三组整数,表示 大麦:燕麦:小麦 的比例,找出用这三种饲料调配 xyz\red{x:y:z} 的饲料的方法。

例如,给出目标饲料 345\red{3:4:5} 和三种饲料的比例:

1:2:3\red{1:2:3} 3:7:1\red{3:7:1} 2:1:2\red{2:1:2}

你必须编程找出使这三种饲料用量最少的方案,要是不能用这三种饲料调配目标饲料,输出NONE\red{“NONE”}。“用量最少”意味着三种饲料的用量(整数)的和必须最小。

对于上面的例子,你可以用8\red{8}份饲料1\red{1}1\red{1}份饲料2\red{2},和5\red{5}份饲料3\red{3},来得到7\red{7}份目标饲料:

8×(1:2:3)+1×(3:7:1)+5×(2:1:2)=(21:28:35)=7×(3:4:5)\red{8\times (1:2:3) + 1\times (3:7:1) + 5\times (2:1:2) = (21:28:35) = 7\times (3:4:5)}

表示饲料比例的整数以及目标饲料的都是小于100\red{100}的非负整数。表示各种饲料的份数的整数,都小于100\red{100}。一种混合物的比例不会由其他混合物的比例直接相加得到。

输入格式

1\red{1} 行: 三个用空格分开的整数,表示目标饲料

24\red{2\sim 4} 行: 每行包括三个用空格分开的整数,表示农夫约翰买进的饲料的比例

输出格式

输出文件要包括一行,这一行要么有四个整数,要么是NONE\red{“NONE”}。前三个整数表示三种饲料的份数,用这样的配比可以得到目标饲料。第四个整数表示混合三种饲料后得到的目标饲料的份数。

样例

输入样例

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

输出样例

8 1 5 7