C7-01 · Đảo chuỗi

Xem dạng PDF

Gửi bài giải

Điểm: 1,00
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Tác giả:
Nguồn bài:
Sách "Lập trình cơ sở với Python"
Dạng bài
Ngôn ngữ cho phép
Python

Nguồn: Bài C7-01, mục 7.10, giáo trình Lập trình cơ sở với Python — TS. Nguyễn Quốc Long.

Đề

Cho một chuỗi ~s~. In ~s~ viết ngược (ký tự cuối lên đầu), rồi in YES nếu ~s~ là chuỗi đối xứng (đọc xuôi và đọc ngược giống hệt nhau), ngược lại in NO.

So sánh phân biệt chữ hoa, chữ thường và tính mọi ký tự, kể cả dấu cách: Aa không đối xứng; ab a cũng không đối xứng vì viết ngược thành a ba.

Dữ liệu vào

Một dòng chứa chuỗi ~s~.

Kết quả

Hai dòng:

  • dòng 1: chuỗi ~s~ viết ngược;
  • dòng 2: YES hoặc NO.

Ràng buộc

  • ~1 \le |s| \le 200~ (~|s|~ là độ dài của ~s~).
  • ~s~ gồm các ký tự ASCII in được: chữ cái không dấu, chữ số, dấu câu, dấu cách.
  • ~s~ không bắt đầu và không kết thúc bằng dấu cách, nhưng ở giữa có thể có nhiều dấu cách liền nhau.

Gợi ý

Mục 7.1: lát cắt s[::-1] là chuỗi đảo. Đừng lower() hay bỏ dấu cách — đề so sánh nguyên văn.

Lưu ý về chấm

Hệ thống so từng ký tự của mỗi dòng kết quả (chỉ bỏ qua dấu cách thừa ở cuối dòng): dòng 1 phải là chuỗi đảo nguyên văn, giữ đúng số dấu cách liền nhau như trong s. Đừng in bằng print(*...split()) hay chuẩn hóa dấu cách.

Ví dụ 1

Dữ liệu vào:

CNTT-K68

Kết quả:

86K-TTNC
NO

Ví dụ 2

Dữ liệu vào:

radar

Kết quả:

radar
YES

Giải thích ví dụ

  • Ví dụ 1: đọc CNTT-K68 từ phải sang trái được 86K-TTNC (Hình 7.1 trong sách). Chuỗi đảo khác chuỗi gốc nên in NO.
  • Ví dụ 2: radar đọc ngược vẫn là radar nên in YES.

Nguồn trong sách: bài tập C7-01 (mục 7.10) · Mức: (*)


Đang tải...