主页 > 开源代码  > 

笔试-果园施肥

笔试-果园施肥
应用

某农场主管理一大片果园,fileds[i]表示第i片果林的面积,单位m^2。小布要在n天之内完成施肥工,每次选择一片果林进行施肥,并且当天施肥完成后不再进行其他施肥作业。 施肥机的能效为k,单位m^2/day,请问最小k为多少才能顺利完成任务,如果无法完成任务返回-1。

实现 str1 = input("请输入fileds的元素个数m、施肥期限天数n:").split() MN = [int(i) for i in str1] m = MN[0] n = MN[1] str2 = input("请输入果林面积fileds:").split() fileds = [int(i) for i in str2] def calculate_days(size, k): day = 0 while day*k < size: day = day + 1 return day def calculate_k(fileds, k, n): days = [] for i in range(0, len(fileds)): need_day = calculate_days(fileds[i], k) days.append(need_day) sum = 0 for i in range(0, len(days)): sum = sum + days[i] if sum <= n: print(k) # return k else: k = k + 1 calculate_k(fileds, k, n) # return calculate_k(fileds, k, n) if n < m: print(-1) else: k = 1 calculate_k(fileds, k, n) # print(calculate_k(fileds, k, n))
标签:

笔试-果园施肥由讯客互联开源代码栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“笔试-果园施肥