首页 > 代码库 > codeforces_734C
codeforces_734C
Anton and Making Potions
安东和他的药水
安东做一份药水有2种方法:
1.把做药水的时间X换成Ai,花费Bi 魔法
2.一瞬间做成Ci份药水,花费Di 魔法
问,最少需要多少时间
二分魔法值
n,m,k = list(map(int,input().split()))x,s = list(map(int,input().split()))a_time = list(map(int,input().split()))a_cost = list(map(int,input().split()))b_num = list(map(int,input().split()))b_cost = list(map(int,input().split()))def binary_search(manapoints): global k,b_cost l = 0; r = k-1; pos = -1 while (l <= r): mid = int((l+r)/2) if (b_cost[mid] <= manapoints): l = mid+1; pos = mid; else : r = mid-1 return posres = n*xpos = binary_search(s)if (pos >= 0): res = min(res,(n-b_num[pos])*x);for i in range(m): if (a_cost[i] > s): continue; rest = s-a_cost[i] pos = binary_search(rest) if (pos >= 0): res = min(res,(n-b_num[pos])*a_time[i]) else : res = min(res,n*a_time[i])print(res)
接下来是Python学习时间
xxx.append(x[i],xx[i])
Python 的二维数组
可以直接sort
xxx.sort() (按照x[i]的大小进行从小到大排序)
为什么会这样呢?
sort()函数原型
xxx.sort(
cmp
=
None
, key
=
None
, reverse
=
False
)
reverse :
False(从小到大) True (从大到小)
key:
xxx.sort(key = lambda x:x[2])按照x[2]大小排序
cmp:
xxx.sort(cmp=g)
def g(x,y):
returu x[0]-y[0]
codeforces_734C
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。