[Xâu Ký Tự Cơ Bản]. Bài 18. Sắp xếp từ theo chiều dài

Xem dạng PDF

Gửi bài giải

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

Nguồn bài:
28Tech
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Cho xâu kí tự S gồm các từ được phân cách nhau bởi một vài dấu cách.

Thực hiện sắp xếp các từ trong xâu theo thứ tự chiều dài tăng dần, nếu 2 từ có cùng chiều dài thì từ nào có thứ tự từ điển nhỏ hơn sẽ được xếp trước.


Đầu vào

Dòng duy nhất chứa xâu S


Giới hạn

1<=len(S)<=10000

S chứa kí tự là chữ cái, chữ số và dấu cách.


Đầu ra

In ra các từ sau khi sắp xếp


Ví dụ :

Input 01
28tech dev c
Output 01
c dev 28tech

Bình luận

Hãy đọc nội quy trước khi bình luận.



  • 0
    dquan0337  đã bình luận lúc 29, Tháng 1, 2026, 14:43

    define mqcrbn2k11 <bits/stdc++.h>

    include mqcrbn2k11

    define ll long long

    define FOR(i,a,b) for(int i = a; i <= b; i++)

    define FORNGUOC(i,b,a) for(int i = b; i >= a; i--)

    using namespace std;

    bool cmp(const string &s, const string &x){

    if (s.size() == x.size()) return s < x;
    
    return s.size() < x.size();
    

    }

    string s;

    int main(){

    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
    freopen("input.txt", "r", stdin);
    freopen("HANHTRINHONHOCSINHGIOIMONTINCAPQUOCGIA.out", "w", stdout);
    vector<string> v;
    while (cin >> s) v.push_back(s);
    sort(v.begin(), v.end(), cmp);
    for (const string &s : v) cout << s << ' ';
    return 0;
    

    } // Mng tham khảo nhé


  • -1
    bennie15025_meow  đã bình luận lúc 30, Tháng 12, 2025, 14:36

    Ez game: https://onecompiler.com/cpp/4494zm5g8


  • 0
    quanphan475  đã bình luận lúc 13, Tháng 9, 2025, 12:48

    include <bits/stdc++.h>

    using namespace std;
    bool cmp(string x, string y){
        if(x.size() != y.size()){
            return x.size() < y.size();
        }
        return x < y;
    }
    int main(){
        vector<string> v;
        string s;
        while(cin >> s){
            v.push_back(s);
        }
        sort(v.begin(), v.end(), cmp);
        for(string x : v){
            cout << x << " ";
        }
        return 0;
    }
    

  • -6
    Kaybe  đã bình luận lúc 4, Tháng 4, 2025, 14:23

    Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.