ĐỘI BỐC VÁC – LIST
Đội bốc vác: Một đội bốc vác khi làm việc thường được phân công như sau:
+ Nhóm phụ việc gồm: một người ghi chép các thông tin liên quan đến công
việc, ở điểm bốc hàng sẽ có một người phụ giúp để cân khối lượng và đưa các bao
hàng lên vai, ở điểm xếp sẽ có một người giúp sắp xếp ngăn nắp các bao hàng.
+ Nhóm khuân vác: Gồm a công nhân khuân vác sẽ làm việc theo thứ tự để
vác b bao hàng từ điểm bốc đến điểm xếp rồi quay lại, lặp lại cho đến khi hết hàng.
Khi làm việc các công nhân được đánh mã số là số thứ tự lần lượt từ 1 đến a
(trên thực tế mã số này chính là tên của từng công nhân), các bao hàng được ghi số
thứ tự từ 1 đến b.
Hãy viết chương trình để tính năng suất và tiền thưởng cho nhóm công nhân
khuân vác.
Dữ liệu vào từ file: BOCVAC.INP
– Dòng đầu tiên ghi hai số nguyên a, b cách nhau một khoảng trống (0 < a,b < 1000).
– Dòng tiếp theo là b số tự nhiên có giá trị k (45 < k ≤ 65) là khối lượng của các
bao hàng từ 1 đến b.
Dữ liệu ra file: BOCVAC.OUT
– Dòng đầu tiên ghi tổng khối lượng mà mỗi công nhân vác được, các số cách
nhau một khoảng trắng.
– Dòng thứ hai ghi mã số của công nhân có tổng khối lượng vác nhiều nhất,
nếu có nhiều công nhân cùng khối lượng thì ghi tất cả mã số theo thứ tự tăng dần, các
số cách nhau một khoảng trắng.
Ví dụ:
BOCVAC.INP | BOCVAC.OUT |
5 17 | 214 228 164 167 180 |
51 62 53 54 65 56 57 58 49 60 51 62 53 64 55 56 47 | 2 |
Gợi ý bài làm:
BV = [51, 62 ,53, 54 ,65 ,56, 57 ,58, 49 ,60, 51, 62, 53, 64 ,55, 56 ,47] # HS tự tạo Danh sách bằng append() # Khởi tạo danh sách rỗng để chia DS --> DS con và tính tổng DS con S=[] K=[] #Chia Danh sách thành 5 Danh sách con. for i in range(5): S.append(BV[i::5]) #Tính tổng mỗi Danh sách con for j in S: K.append(sum(j)) #Đưa ra vị tri người vác được nhiều nhất. print("Người vác được nhiều nhất ở vị trí thứ",K.index(max(K))+1) #Yêu cầu: "nếu có nhiều công nhân cùng khối lượng thì ghi tất cả mã số theo thứ tự tăng dần" -- HS tự giải.
n=int(input())
a=list(map(int,input().split()))
l=list(set(a))
b=[0]*len(l)
for i in range(len(l)):
b[i]=a.count(l[i])
for i in range(len(b)):
if b[i]>1:
while l[i] in a:
a.remove(l[i])
print(max(b))
print(a)
print(l)
n=int(input())
a=list(map(int,input().split()))
l=list(set(a))
b=[0]*len(l)
for i in range(len(l)):
b[i]=a.count(l[i])
for i in range(len(b)):
if b[i]>1:
while l[i] in a:
a.remove(l[i])
print(max(b))
print(a)
print(l)