肯德基店销售炸鸡、薯条、可乐三种实物,准备三种食物的速度一样,且三种食物同时制作。每个订单由三部分组成,分别表示炸鸡、薯条、可乐的需求份数。每个订单的食物需求是固定的,而订单的准备时间取决于这些食物的需求量。要求根据食物的准备情况,计算出 N 个订单的取餐顺序。
输入由一串连续的数字组成,表示多个订单的需求,格式为:每个订单的炸鸡、薯条、可乐需求份数依次排列。数组的长度是订单数的三倍,每三个数字代表一个订单的需求。
警告:本题目有歧义,题解仅供参考
肯德基店销售炸鸡、薯条、可乐三种实物,准备三种食物的速度一样,且三种食物同时制作;三种食物同时制作,按订单顺序进行分发食物。现在有 N 个订单,每个订单用连续三位数组元素表示,数组的元素是对应食物的份数。N 最大为 100 万,每个订单里每份食物最多 100 万份。请计算 N 个订单的取餐顺序,如果多个订单可以同时取餐,按订单号从小到大排序输出。
一个以空格隔开的数组,数组长度为订单个数的 3 倍。
格式:订单 0 的炸鸡份数 订单 0 的薯条份数 订单 0 的可乐份数 订单 1 的炸鸡份数 订单 1 的薯条份数 订单 1 的可乐份数
一个以空格隔开的数组,数组长度为订单个数,元素为订单号。
输入
0 0 1 0 1 0 1 0 0
输出
0 1 2
说明
1、有三个订单,第一个订单: 0 份炸鸡,0 份薯条,1 份可乐;第二个订单:0 份炸鸡,1 份薯条,0 份可乐;第三个订单: 1 份炸鸡,0 份薯条,0 份可乐。订单的叫号顺序为:0,1,2
2、计算步骤:第一步,准备 1 份炸鸡,1 份薯条,1 份可乐,三个订单都可以取餐。
输入
1 1 3 0 1 0 1 0 0
输出
1 2 0
说明
1、有三个订单,第一个订单:1 份炸鸡,1 份薯条,3 份可乐;第二个订单:0 份炸鸡,0 份薯条,1 份可乐;第三个订单:0 份炸鸡,0 份薯条,1 份可乐。订单的叫号顺序为: 1,2,0
2、计算步骤:第一步,准备 1 份炸鸡,1 份薯条,1 份可乐,第一个订单未准备好;第二步,准备 1 份炸鸡,1 份薯条,1 份可乐,第二个和三个订单可以取餐;第三步,准备 0 份炸鸡,0 份薯条,1 份可乐,第一个订单取餐。