ans=[0]*100
idx=[0]*100
tmp1=[];tmp2=[]
for i in range(len(a)):
①
idx[a[i]]=b[i] #原始序号排序后会跑到第b[i]位置上
for i in range(len(ans)):
while ans[i]>0:
②
tmp2.append(idx[i])
ans[i]-=1
return tmp1,tmp2
‘’’#代码略
a=a1+a2
b=b1+b2
n= len(a)
ta,tb=0,0 #ta为甲加工时间,tb为乙加工时间
for i in range (n) :
ta+=a[i]
if ①
tb=ta
print("总加工时长最短为:",tb)
图a 图b
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
C | A | A | B | C | A |
j = 0
while:
j += 1
return -1
for i in range(len(a)):
p=finde()
if p==-1:
#仓库已满,后续操作代码略
return
if a[i][0] not in info: #当前货物没出现过
info[a[i] [0]] =[p, p]
else:
c[info[a[i][0]][1]]=p
for j in range(a[i][1] -1):
p=c[p]
info[a[i][0]][1] =p
for i in range(len(a)):
if a[i][0] not in info:
print("提示:该货物已无存量! ")
continue
p=info[a[i][0]][0] ; r= 0
while p! =-1 and r<a[i][1]:
t=c[p] ; c[p]=-2 ; p=t
①
if p==-1:
info.pop(a[i][0]) #删除字典中指定的键值对
else:
②
print("提示:该货物已出库"+str(r) +"件")
print("仓库管理系统操作菜单:1.入库2.出库3.查询4.存储现状图5.退出")
t=int(input("请输入操作步骤:(选择数字1~5) "))
#读入货物数据到列表a,调用相应函数,代码略
客户 编号 | 到达 时间 | 办理业务所 需时长 (分) | 客户 等级 | ||||
1 | 07:53 | 8 | 0 | ||||
2 | 07:54 | 6 | 0 | ||||
3 | 07:57 | 7 | 0 | ||||
4 | 08:02 | 8 | 1 | ||||
5 | 08:12 | 10 | 1 | ||||
. | . | . | . |
图 a
图b
货物类型 | A | B | C | D | E | 车辆编号 | C1 | C2 | C3 | |
货物数量(件) | 15 | 50 | 28 | 20 | 25 | 最大载货量(件) | 25 | 35 | 40 |
def merge(1st):
i=0;n=len(lst)-l
while i<n:
j=i+1
while j<=n:
if lst[i][0]==lst[j][0]:
lst[i][l]+=lst[j][1]
①
j-=1;n-=1
j+=1
i+=l
return 1st[:n+1]
data[i].append(i+1)#为data[i]增加一个元素
num=0;s=“”
q=head
while q!= -l and num<b[i][1]:
num+=data[q][1]
data[q][1]=0
s+=data[q][0]+”,”
p=q;q=data[q][2]
print(”编号为”,b[i][0],”的车辆装载的货物为:”,s)
if num>b[i][1]:
①
head=p
else:
head=q
q=head
if q!=-l:
while data[q][2]!= -l and ②
q=data[q][2]
if q!=head:
tmp=data[head][2]
data[head][2]=data[q][2]
data[q][2]=head
③
else:
break
print(”剩余货物及数量:”)
p=head
while p!=-1:
print(data[p][0],”货物:”,data[p][1])
p=data[p][2]
print(”货物已全部装完!”)
到达时间 | 办理时长 | |
A | 09:01 | 7 |
B | 09:01 | 13 |
C | 09:02 | 5 |
D | 09:04 | 9 |
…… | …… |
for i in range(len(rawdata)):
h=int(rawdata[i][0][:2])-9
m=int(______)
x=h﹡60+m
rawdata[i].append(x) #rawdata[i]追加一个元素x
return rawdata
n=len(data)
head=[0]*m
tail=[0]*m
que=[[0 for i in range(n)] for j in range(m)]
i=0
total=0
while i<n:
x=0
for y in range(1,m):
if que[y][head[y]]<que[x][head[x]]:
x=y
if head[x]==tail[x]:
que[x][tail[x]]=data[i][2]+data[i][1]
tail[x]+=1
else:
if data[i][2]<que[x][head[x]]:
total+= ①
que[x][tail[x]]=que[x][head[x]]+data[i][1]
else:
que[x][tai1[x]]= ②
tail[x]+=1
head[x]+=1
if ③
que[x][head[x]]+=10
i+=1
return total/n
1图 2图
df=pd.read_csv ("data.csv")
for row in df.values: #逐行读取数据到列表row
s=row[1] #将时间数据赋值到s
b,c=map (int,s.split (’:’)) #以“:”分割小时到b,分钟到c
s=b*60+c #将b小时、c分钟换算成s分钟
a. append ([row[0],s,row [2]]) #a追加一个元素[row[0],s,row[2]]
n=len (a)
for i in range(n-1):
for j in range (n-1,i,-1):
if a[j][1]<a[j-1][1]:
a[j],a[j-1]=a[j-1],a[j]
h.append ([-1,-1]) #h末尾追加一个元素[-1,-1]
m=a[i][0]
if a[i][2]=="OUT":
b[m]+=1
if h[m][0]!=-1:
total+= ②
h[m][0]=q[h[m][0]][2]
b[m]-=1
print ("类别为",m,"的客人在",a[i][1],"分点餐")
else:
if b[m]>0:
b[m]-=1
print ("类别为",m,"的客人在",a[i][1],"分点餐")
else:
q.append ([m,a[i][1],-1])
if h[m][0]==-1:
h[m][0]=c
if h[m][1]!=-1:
③
h[m][1]=c
c+=1