#CCBCHBON0000038. Hiển thị ký tự điều khiển (Display Escape Sequences)

Hiển thị ký tự điều khiển (Display Escape Sequences)

Hiển thị ký tự điều khiển (Display Escape Sequences)

Nguồn: Kernighan & Ritchie

Phiên bản: Phước Hưng OJ Extended

Đề bài

Đọc toàn bộ văn bản đến EOF. Thay mỗi ký tự tab ngang thật bằng hai ký tự hiển thị dấu gạch chéo ngược và chữ t (\t); thay mỗi ký tự xuống dòng thật bằng hai ký tự \n; thay mỗi dấu gạch chéo ngược thật bằng hai dấu gạch chéo ngược (\\). Mọi ký tự khác giữ nguyên. Chuyển đổi một lượt từ Input, không xử lý lại ký tự vừa xuất. Đây là bản phóng tác PHOJ: bài K&R 1-10 gốc nói về backspace thay vì newline.

Input

Văn bản UTF-8 không chứa CR, tối đa 100000 byte, có thể rỗng và không bắt buộc có newline cuối.

Output

In chuỗi ký tự hiển thị sau thay thế, không thêm newline.

Subtask

  • Subtask 1 (20%): Độ dài luồng UTF-8 không quá 100 byte; không có CR.

  • Subtask 2 (30%): Độ dài luồng UTF-8 không quá 2000 byte; không có CR.

  • Subtask 3 (50%): Độ dài luồng UTF-8 không quá 100000 byte; không có CR.

Ví dụ

Ví dụ 1

Input:

A	B
C\D

Output:

A\tB\nC\\D

Giải thích:

Tab, newline, backslash thật lần lượt thành các ký tự hiển thị; các ký tự được xuất không xử lý thêm lần nữa. Biểu diễn Input có ký tự đặc biệt: "A\tB\nC\\D"; Output: "A\\tB\\nC\\\\D".

Ví dụ 2

Input:

\t

Output:

\\t

Giải thích:

Tab, newline, backslash thật lần lượt thành các ký tự hiển thị; các ký tự được xuất không xử lý thêm lần nữa. Biểu diễn Input có ký tự đặc biệt: "\\t"; Output: "\\\\t".

Ví dụ 3

Input:


Output:


Giải thích:

Tab, newline, backslash thật lần lượt thành các ký tự hiển thị; các ký tự được xuất không xử lý thêm lần nữa. Biểu diễn Input có ký tự đặc biệt: ""; Output: "".

Biểu diễn trong dấu nháy dưới đây dùng \t cho tab thật, \n cho ký tự xuống dòng thật và \\ cho dấu gạch chéo ngược thật; đây chỉ là cách HIỂN THỊ luồng dữ liệu, không phải ký tự bổ sung trong Input.