Hướng dẫn giải của ĐẢO NGHỊCH KIỂU CHỮ (REVERSECASE.CPP)


Chỉ dùng lời giải này khi không có ý tưởng, và đừng copy-paste code từ lời giải này. Hãy tôn trọng người ra đề và người viết lời giải.
Nộp một lời giải chính thức trước khi tự giải là một hành động có thể bị ban.

Hướng dẫn giải thuật

1. Ý tưởng

Duyệt các vị trí từ L đến R (tính từ 1). Đổi chữ thường thành hoa và ngược lại.

2. Các bước thực hiện
  1. Đọc dữ liệu theo đúng định dạng đề bài.
  2. Chỉ thay đổi trong đoạn yêu cầu; ký tự không phải chữ cái giữ nguyên.
  3. Xuất kết quả theo yêu cầu, không in lời giải thích thừa.
3. Phân tích độ phức tạp
  • Thời gian: O(R-L+1).
  • Bộ nhớ: O(1) (tính cả dữ liệu xâu được lưu).
4. Chương trình tham khảo
    #include <bits/stdc++.h>
    using namespace std;
    int main() {
        string s;
        int l, r;
        cin >>s>>l>>r;
        for (int i=l-1;i<r;i++)
        {
            if (islower(s[i]))
            s[i]=toupper(s[i]);
            else 
            if (isupper(s[i]))
                s[i]=tolower(s[i]);
        }
        cout<<s;
        return 0;
    }
5. Lưu ý khi làm bài

Chỉ thay đổi trong đoạn yêu cầu; ký tự không phải chữ cái giữ nguyên.


Đang tải...