rt
T1
Farmer John的奶牛很爱吃甜食,他们喜欢吃甘蔗糖!Farmer John共有N头牛。每头牛有一定的初始高度,他想要喂给他们M颗甘蔗糖,每根甘蔗糖也有不同的高度
Farmer John计划将甘蔗糖一根接一根地喂给奶牛,按照输入的顺序。为了给奶牛喂甘蔗糖,他会把甘蔗糖挂起来使甘蔗糖一开始就刚好碰到地面。然后,奶牛将按照输入的顺序一头接一头地排队,走到甘蔗糖前,每头牛都吃到自己的高度的糖果(因为它们不能再高了)。即使在奶牛吃掉糖果棒的底部后,糖果棒也会悬挂在最初设置的位置,不会下降到地面。如果甘蔗的底部已经超过奶牛的高度,那么奶牛在轮到它的时候可能什么都不吃。轮到每头牛后,奶牛的身高会根据它们吃了多少单位的甘蔗糖而增加,农民约翰挂上下一根甘蔗糖,奶牛再次重复这个过程(第一头牛再次成为第一个开始吃下一根甘蔗糖的人)。
输入
第一行包含N和M。
下一行包含N头奶牛的初始高度,每头都在范围内。
下一行包含M根糖果棒的高度,每根都在的范围内。
输出
一行一个整数,输出最后N头牛的高度(奶牛吃完x单位的糖后会升高x个单位)
注意:使用long long 数据类型
样例输入:
3 2
3 2 5
6 1
样例输出:
7
2
7
样例说明
第一根甘蔗是6个单位高。
第一头牛吃掉第一根甘蔗糖到高度3的部分,第一根甘蔗糖的剩余部分占据高度[3,6]
第二头牛不够高,吃不下第一根甘蔗糖的任何剩余部分。第三头牛多吃两个单位的第一根甘蔗糖。第一根甘蔗糖的剩余部分,占据高度[5,6],没有被任何牛吃到。
接下来,每头奶牛的生长量与它的进食量相等,因此奶牛的高度变为[3+3,2+0,5+2]=[6,2,7]。
第二根甘蔗是一个单位高,第一头牛吃掉了全部。
T2:
农民约翰有N头奶牛排成一行()。不幸的是,有一种疾病正在蔓延。
最初,一些奶牛开始被感染。每天晚上,受感染的奶牛都会将疾病传播给左右两侧的奶牛(如果存在的话)。一旦奶牛被感染,它就会继续被感染。
经过几个晚上,农夫约翰意识到问题已经失控,所以他对奶牛进行了测试,以确定谁生病了。找出可能开始患病的奶牛的最小数量。
输入格式
第一行一个整数N,表示奶牛的个数
接下来的一行包含N个0或者1,代表在某一天的感染情况,1代表奶牛感染了,0代表还没感染。
输出格式
输出一个数字,表示可能引起这场感染的最少的奶牛个数
样例输入 1
5
11111
样例输出 1
1
说明
初始可以有一头牛引发这场疫情(1变3,3变5)
样例输入 2
6
011101
样例输出 2
4
说明
初始只有可能是这4头牛的情况
T3:
Farmer John会在他的农场里种植N株芦苇,然而,他的一些植物有遗传差异,所以有些植物会比其他植物生长得更快。第i株植物的初始高度为英寸,每天之后,第i株生长英寸。
FJ比其他植物更喜欢他的一些植物,他希望一些特定的植物比其他植物高。他给你一组不同的值t1,…,tN,包含从0到N−1的所有整数。他希望第i株植物正好有ti个比它高的植物。找到满足FJ请求的最小天数,或者确定这是不可能的。
输入
题目包含多组样例
第一行将由一个整数T组成,表示独立测试用例的数量(1≤T≤10)
每个测试用例的第一行由一个整数N组成
第二行由N个整数表示第株的初始高度
第三行由N个整数表示每株植物每天都在生长英寸。
第四行由N个不同整数 (一个0-N-1的排列) 表示FJ给你的数组。
保证N的总和在所有测试用例中,不超过
输出
对于每组测试用例,输出最少几天可以满足Farmer John的要求,如果不可能,输出-1
样例输入
6
1
10
1
0
2
7 3
8 10
1 0
2
3 6
10 8
0 1
2
7 3
8 9
1 0
2
7 7
8 8
0 1
2
7 3
8 8
1 0
样例输出
0 3 2 5 -1 -1 样例输入2
2 5 7 4 1 10 12 3 4 5 2 1 2 1 0 3 4 5 4 10 12 7 1 3 1 1 4 5 2 4 3 1 0 样例输出2
4 7
希望对大家有帮助!