ĐỘ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.INPBOCVAC.OUT
5 17214 228 164 167 180
51 62 53 54 65 56 57 58 49 60 51 62 53 64 55 56 472

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.

You may also like...

0 0 đánh giá
Đánh giá bài viết
guest

2 Góp ý
Cũ nhất
Mới nhất Được bỏ phiếu nhiều nhất
Phản hồi nội tuyến
Xem tất cả bình luận
tiêm xjnk: Nguyên xjnk_Hà xjnk_Ly xjnk_Mai xjnk
tiêm xjnk: Nguyên xjnk_Hà xjnk_Ly xjnk_Mai xjnk
Khách
1 năm trước

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)

trâm xấu hân xấu
trâm xấu hân xấu
Khách
1 năm trước

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)

2
0
Bạn hãy viết bình luận cho nội dung này !x