Nội dung Bài tập
- Mã:
- MATMA
- Tên:
- Mật mã Caesar
- 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ớ:
- 256 MB
- Được tạo bởi:
- 22120394
Trong thời đại công nghệ số, việc bảo mật thông tin là vô cùng quan trọng. Bất cứ một dữ liệu nào nếu bị rò rỉ cũng có thể trở thành một vũ khí vô cùng nguy hiểm của tội phạm mạng. Vì vậy, năm 2050, EK-YC - một tổ chức bảo mật thông tin, đã đưa ra một phương pháp mã hóa mới để ngăn chặn nguy cơ rò rỉ dữ liệu quan trọng.
Quy tắc mã hóa như sau: Các dữ liệu được lưu dưới dạng file được mã hóa bởi các chữ số cách nhau bởi kí tự '#'. Ở mỗi dòng sẽ chứa các mật mã để giải mã dữ liệu. Sau khi thu thập đầy đủ các mã khóa, dữ liệu sẽ được giải mã bằng phương pháp Caesar theo độ dịch chuyển k
INPUT:
- Dòng đầu tiên chứa 2 số nguyên k và n cách nhau bởi dấu '#'
- n dòng tiếp theo có dạng a#b#...#x#...là các mảng đơn được định nghĩa như sau:
+ a là số lượng số nguyên trong mảng
+ b là vị trí của x - khóa trên dòng
OUTPUT:
-In đoạn mã đã được dịch ra màn hình.
Ví dụ:
Input
Output
6#1#
4#2#77#15#20#93#
6#4#92#49#21#62#2#27#
1#0#14#
4#2#40#26#17#72#
7#3#68#67#29#13#82#30#62#
4#3#35#29#2#6#
SAMPLE
Giải thích:
- Dòng thứ 0 cho biết: Mật mã có 6 kí tự và được mã hóa Caesar theo độ dịch k = 1
- Ở dòng thứ nhất, mảng gồm có 4 phần tử, khóa x = 20 ở vị trí thứ 2 (tính từ 0)
- Ở dòng thứ hai, mảng gồm 6 phần tử, khóa x = 2 ở vị trí thứ 4
-...
-Sau khi giải mã ta được các khóa 20-2-14-17-13-6, dịch sang bảng chữ cái trở thành TBNQMF, dịch về bên trái một khoảng k = 1 thì ta được SAMPLE
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