Editorial for C Bài 3.A1: Bảng chữ cái


Remember to use this editorial only when stuck, and not to copy-paste code from it. Please be respectful to the problem author and editorialist.

Submitting an official solution before solving the problem yourself is a bannable offence.

Author: buitrunghieu

Lời giải chi tiết

Bài này là bài liên quan đến xâu ký tự, sử dụng char[] hay char* để thể hiện chúng.

Ý tưởng: Ta sẽ sử dụng 2 vòng lặp lồng nhau, mỗi kí tự trong bảng chữ cái sẽ được kiểm tra sự xuất hiện trong xâu \(a\). Nếu không có kí tự đó thì ngay lập tức break vòng lặp và trả về kết quả NO. Nếu duyệt hết mà không vấn đề gì thì trả về YES.

Các bước giải:

  • Bước 1: Khai báo và nhập vào số \(q\) thể hiện số truy vấn, sau đó chạy truy vấn.
  • Bước 2: Khai báo và nhập vào số \(n\) và một xâu \(a\).
  • Bước 3: Sử dụng 2 vòng lặp lồng vào nhau: Vòng thứ nhất là duyệt tất cả các kí tự từ a đến z, vòng thứ 2 là duyệt tất cả các kí tự trong xâu \(a\). Nếu một kí tự đã xuất hiện trong xâu \(a\), break vòng lặp thứ 2 để tiếp tục vòng lặp thứ nhất. Trong trường hợp vòng lặp thứ 2 hoàn thành, có nghĩa là kí tự đang được duyệt không xuất hiện trong xâu \(a\). Khi đó ta sẽ break vòng lặp thứ nhất và in ra NO, kết thúc truy vấn. Còn nếu chạy hết vòng lặp thứ nhất, tức là các kí tự từ a đến z đều xuất hiện trong xâu \(a\). Lúc này in ra YES.
  • Bước 4: Xuống dòng để tiếp tục với các truy vấn sau đó.

Đăng ký khóa học: https://www.facebook.com/clblaptrinhfullhouse

SĐT liên hệ: 0372229686

Youtube: CLB Lập Trình Full House

Fullhouse dev đồng hành trên từng dòng code


Comments

There are no comments at the moment.

Zalo