Trong thời đại ngày nay, thông tin cá nhân của mỗi người dễ dàng bị xâm nhập bởi rất nhiều công nghệ hiện đại nghe lén. Chính vì vậy, một đôi bạn muốn bảo mật thông tin cho nhau đã có sáng kiến nghĩ ra cách trao nhau những thông điệp mà người khác đọc hoặc nghe được thì không hiểu gì. Thông điệp của họ là một câu với nhiều từ được phân biệt bởi ký tự trống (dấu cách) và được sắp xếp lộn xộn để trở thành câu vô nghĩa. Để hiểu nội dung một thông điệp của người bạn gởi cho mình, hai người bạn đã quy ước trước một bộ mã là một dãy số nguyên dương có số lượng số tương ứng với số từ của thông điệp nhằm giải mã thành câu có ý nghĩa.
Yêu cầu: Lập trình để giúp đôi bạn giải mã một thông điệp cho trước.
- Dữ liệu vào: File văn bản GIAIMA.INP gồm 2 dòng.
+ Dòng đầu ghi một câu có không quá 255 kí tự là thông điệp được gởi đi. Trong câu này có không quá 50 từ, mỗi từ có không quá 30 kí tự.
+ Dòng thứ hai ghi bộ mã gồm một dãy các số nguyên dương đôi một khác nhau dùng để giải mã thông điệp trên.
- Dữ liệu ra: File văn bản GIAIMA.OUT gồm một dòng ghi câu đã được giải mã từ thông điệp đã cho.
Ví dụ:
GIAIMA.INP
GIAIMA.OUT
luon chuc hoc ban gioi luon
2 4 1 6 3 5
chuc ban luon luon hoc gioi
pascal
var s:string;
a:array[1..10000] of int64;
b:array[1..255] of string;
n,k:int64;
i:integer;
begin
assign(input,'GIAIMA.INP');reset(input);
assign(output,'GIAIMA.OUT');rewrite(output);
readln(s);
while s[1]=#32 do delete(s,1,1);
while s[length(s)]=#32 do delete(s,length(s),1);
while pos(#32#32,s)<>0 do delete(s,pos(#32#32,s),1);
n:=1;
for i:=1 to length(s) do
if s[i]=#32 then
inc(n);
for i:=1 to n do
read(a[i]);
k:=1;
for i:=1 to length(s) do
if s[i]<>#32 then
b[k]:=b[k]+s[i]
else inc(k);
for i:=1 to n do
write(b[a[i]],' ');
end.
Tin học là một ngành khoa học chuyên nghiên cứu quá trình tự động hóa việc tổ chức, lưu trữ, xử lý và truyền dẫn thông tin của một hệ thống máy tính cụ thể hoặc trừu tượng. Tin học bao hàm tất cả các nghiên cứu và kỹ thuật có liên quan đến việc mô phỏng, biến đổi và tái tạo thông tin. Hãy tận dụng sức mạnh của tin học để giải quyết các vấn đề và sáng tạo ra những giải pháp mới!
Lớp 7 - Năm thứ hai ở cấp trung học cơ sở, một chuỗi quay mới lại đến và chúng ta vẫn bước tiếp trên con đường học sinh. Học tập vẫn là nhiệm vụ chính, hãy luôn kiên trì và không ngừng cố gắng!
Copyright © 2024 Giai BT SGK