Nội dung Bài tập
Mã:
[LTHDT17]GK01
Tên:
SMG Gateway 01
Dạng thi:
oi
Thang điểm:
10 điểm
Giới hạn thời gian:
1 giây
Giới hạn bộ nhớ:
64 MB
Được tạo bởi:
tamtd

Một công ty viễn thông cần xây dựng hệ thống API để quản lý các thông điệp quảng cáo (broadcast message). Hệ thống sẽ tiếp nhận các yêu cầu và tự động gửi thông điệp đến số điện thoại của khách hàng. Để làm được điều đó, người ta sẽ sử dụng một thiết bị có N slot để gắn SIM điện thoại (SMG gateway). Mỗi slot như vậy sẽ có các thông tin sau:

- Mã số (Slot ID), kiểu số, mặc định là 0

- Số điện thoại của SIM (sim phone number), kiểu chuỗi, mặc định là chuỗi rỗng

- Nhà mạng cung cấp (network provider), kiểu chuỗi, mặc định là chuỗi rỗng

- Số thông điệp có thể gửi trong ngày (message limit), kiểu số, mặc định là 100

Mỗi lần một slot thực hiện việc gửi 1 thông điệp đi, số thông điệp có thể gửi trong ngày của slot đó sẽ giảm đi 1, điều này nhằm đảm bảo 1 slot không thể gửi quá nhiều thông điệp và để phân tải cho hệ thống.

Khi có một yêu cầu gửi tin nhắn đến một số điện thoại của khách hàng, SMG gateway sẽ lựa chọn ra slot thích hợp nhất để gửi. Các tiêu chí lựa chọn sẽ lần luợt như sau:

- Slot phải cùng nhà mạng với số điện thoại khách hàng.

- Slot phải có số thông điệp có thể gửi trong ngày lớn nhất.

Yêu cầu:

1. Xây dựng lớp đối tượng Slot với đầy đủ thành phần dữ liệu như mô tả, thể hiện rõ tính đóng gói và che dấu dữ liệu.

2. Xây dựng các phương thức khởi tạo cho lớp Slot:

- Không tham số, với các thông tin mặc định.

- Có tham số, với đầy đủ các tham số tương ứng.

- Sao chép

3. Xây dựng hàm nạp chồng toán tử nhập và xuất cho lớp đối tượng Slot.

Input:

- Dòng đầu tiên cho biết số lượng slot

- N dòng tiếp theo, mỗi dòng là 1 bộ thông tin của mỗi slot, mỗi thông tin cách nhau 1 khoảng trắng

Output:

- N dòng là thông tin của N slot theo định dạng

{Slot ID:sim phone number:network provider:message limit}

Ví dụ:

Input:

Output:

3

1 0903334455 Mobi 100

2 0963334455 Viettel 150

3 0983334455 Vinaphone 90

{1:0903334455:Mobi:100}

{2:0963334455:Viettel:150}

{3:0983334455:Vinaphone:90}

 

       Ngôn ngữ : 

       Theme : 
Mời bạn soạn code



		



      Ai có thể xem bài này : 

Thông tin



Phần thảo luận