Nhà thông minh Hunonic
Công ty cổ phần Hunonic Việt Nam đang phát triển hệ thống nhà thông minh với nhiều sản phẩm độc đáo. Hệ thống hiện tại là một hệ thống liên kết toàn bộ ngôi nhà qua mạng bluetooth tiết kiệm năng lượng (Mesh).
Nguyên lý hoạt động của các thiết bị này là kết nối bluetooth với nhau, mỗi thiết bị được coi là một điểm và liên kết tới các thiết bị gần nó nhất có thể. Người dùng chỉ cần dùng điện thoại kết nối tới một thiết bị trong mạng, gửi lệnh điều khiển (bật, tắt, tăng, giảm,…) tới thiết bị đã kết nối đó, thiết bị đó kiểm tra thông tin xem có đúng là gửi cho mình không, nếu đúng thì nó thực hiện lệnh, nếu không đúng nó sẽ chuyển tiếp lệnh đó tới thiết bị khác đang kết nối với nó trong mạng. Và cứ như vậy cho đến khi lệnh được gửi tới đúng thiết bị mà người dùng mong muốn.
Vấn đề đặt ra là làm thế nào thiết bị biết được lệnh đó có phải gửi cho nó hay không để có thể xử lý hoặc chuyển tiếp. Ý tưởng đặt ra là mỗi thiết bị sẽ được gắn một mã (id), và lệnh gửi đi sẽ kèm theo mã này. Khi thiết bị nhận được lệnh, nó sẽ so sánh mã của chính nó và mã trong lệnh có giống nhau không, nếu giống nhau nghĩa là lệnh đó gửi cho nó và nó phải xử lý, nếu không nó sẽ chuyển tiếp tới thiết bị khác như trên đã mô tả.
Yêu cầu: với một danh sách các thiết bị có trong mạng, mỗi thiết bị có một mã duy nhất và khác biệt hoàn toàn với các thiết bị khác. Khi người dùng thêm một thiết bị vào trong mạng, hãy tạo ra một mã cho nó sao cho không trùng với mã của thiết bị nào trong mạng đã có và bé nhất có thể để dễ xử lý và tiết kiệm bộ nhớ. Một thiết bị có thể được thêm mới vào hoặc xoá khỏi hệ thống và số thiết bị tối đa là 255.
Đầu vào:
– Dòng 1: Một số nguyên n là số lượng thiết bị đang có trong mạng (0 <= n <= 255)
– Dòng 2: Một dãy có n số nguyên dương, lần lượt là mã của các thiết bị trong mạng, mỗi số cách nhau bởi dấu cách (0 < a[i] <= 255)
Đầu ra: Một số nguyên x duy nhất là mã của thiết bị mới khi được thêm vào mạng thoả mãn các mô tả bên trên. (0 < x <= 255). Nếu không thể thêm được (mạng lưới đã đầy) thì in ra số 0.
Ví dụ:
input: 3 1 2 3 output: 4
Bạn chưa đăng nhập? Đăng nhập để Submit ngay!
Add a Comment
Bạn phải đăng nhập để gửi phản hồi.
hiu hiu