LẮP RÁP MÁY TÍNH

Một phần của tài liệu 150 Bài Toán Tin Lê Minh Hoàng Đại học Sư Phạm Hà Nội 2004 – 2006 potx (Trang 126 - 127)

Trong dây chuyền lắp ráp máy tính tựđộng, có M loại linh kiện đánh số 1, 2...,M và mỗi chiếc máy

được lắp ráp lần lượt từ T linh kiện O1, O2, ..., OT theo đúng thứ tự này. (1 ≤ Oi≤ M).

Để tựđộng hoá dây chuyền sản xuất, người ta sử dụng một rô-bốt lắp ráp và N dụng cụ lắp ráp. Biết

được những thông tin sau:

• Tại mỗi thời điểm, Rô-bốt chỉ có thể cầm được 1 dụng cụ.

• Tại thời điểm bắt đầu, Rô-bốt không cầm dụng cụ gì cả và phải chọn một trong số N dụng cụđã cho, thời gian chọn không đáng kể.

• Khi đã có dụng cụ, Rô-bốt sẽ sử dụng nó để lắp một linh kiện trong dãy O, biết thời gian để Rô- bốt lắp linh kiện loại v bằng dụng cụ thứ i là biv (1 ≤ i ≤ N, 1 ≤ v ≤ M).

• Sau khi lắp xong mỗi linh kiện, Rô-bốt được phép đổi dụng cụ khác để lắp linh kiện tiếp theo, biết thời gian đổi từ dụng cụ i sang dụng cụ j là aij. (Lưu ý rằng aij có thể khác aji và aii luôn bằng 0).

Yêu cu:

Hãy lp trình cho Rô-bt có th lp ráp các linh kin O1, O2, ..., OT mt cách nhanh nht.

Dữ liệu: Vào từ file văn bản VITERBI.INP theo khuôn dạng sau:

N M T O1 O2 ... OT O1 O2 ... OT a11 a12 ... a1N a21 a22 ... a2N ... aN1 aN2 ... aNN b11 b12 ... ... b1M b21 b22 ... ... b2M ... bN1 bN2 ... ... bNM

Kết quả: Ghi ra file văn bản VITERBI.OUT theo khuôn dạng sau: • Dòng 1: Ghi thời gian để lắp ráp xong toàn bộ T linh kiện O1, ..., OT

• Dòng 2: Ghi T số, số thứ k là số hiệu dụng cụđược chọn để lắp linh kiện thứ k trong dãy (Ok).

Các s trên mt dòng ca Input / Output file ghi cách nhau ít nht mt du cách

Ràng buộc: Tất cả các số nói tới ở trên đều là các số tự nhiên ≤ 200. Riêng N, M và T có thêm giả thiết là số dương. Ví dụ: VITERBI.INP VITERBI.OUT 3 4 8 1 2 3 4 1 2 3 4 21 3 2 1 1 3 2 1 1

Một phần của tài liệu 150 Bài Toán Tin Lê Minh Hoàng Đại học Sư Phạm Hà Nội 2004 – 2006 potx (Trang 126 - 127)