Tìm số anh cả

Xem PDF

Điểm: 120 Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Cho số nguyên dương \(n\). Gọi \(S\) là tập hợp tất cả các số nguyên dương được tạo thành từ các chữ số của số nguyên \(n\). Số "anh cả" được định nghĩa là số lớn nhất trong tập \(S\)

Yêu cầu: Cho số nguyên dương \(n(0\le n\le 10^{100})\). Hãy in ra số "anh cả" cần tìm.

Input

  • Dòng thứ nhất chứa số \(t(1\le t\le 20)\) - Thể hiện số testcase

  • \(t\) dòng tiếp theo, mỗi dòng chứa số nguyên dương \(n(0\le n\le 10^{100})\)

Output

  • Ứng với mỗi testcase, in ra đáp án cần tìm.

Example

Test 1

Input
2
1254
3225
Output
5421
5322

Bình luận


  • 1
    penistone    9:26 p.m. 26 Tháng 9, 2023 đã chỉnh sửa

    SPOILER ALERT!

    Xin nhắc nhở rằng đây là gợi ý của mình, các bạn chỉ nên đọc khi không có cách làm nào khác

    Ta có 4 bước để làm bài này như sau:

    • B1: nhập xâu
    • B2: chuyển sâu vừa nhập thành mảng hoặc chuỗi các số/kí tự
    • B3: sắp xếp từ lớn đến bé
    • B4: in ra kết quả

    Code hướng dẫn (accepted code, C++)

    #define sortd(v,cmp) sort((v).begin(),(v).end(),(cmp)) //để code ngắn gọn hơn
    #define FOR(i,l,r,n) for((i)=(l); (i)<=(r); (i)+=(n))
    using namespace std;
    bool cmp(int a, int b) //hàm này giúp sắp xếp giảm dần
    {
        return a>b;
    }
    void sortstr(string s) //hàm xử lí xâu
    {
        vector<int> v; int i; //sử dụng vector để lưu giá trị
        FOR(i,0,s.size()-1,1) v.pb(s[i]-48); //có thể sử dụng mảng số hoặc kí tự
        sortd(v,cmp); //sắp xếp giảm dần
        FOR(i,0,v.size()-1,1) cout<<v[i]; //in ra kết quả
        cout<<endl;
    }
    

    *Admin có thể xóa tin nhắn này nếu cần thiết


    • 0
      lamsauday246    9:56 p.m. 28 Tháng 9, 2022

      sort string là ra mà nhỉ


      • 0
        tkLeHoangLong    10:06 p.m. 8 Tháng 9, 2022

        bài này phải làm sao v mn :)?

        1 phản hồi

        • -2
          trantrikien69    7:55 a.m. 10 Tháng 5, 2022

          Khó quá


          • 1
            huyjav    8:54 a.m. 23 Tháng 3, 2022

            sort(s.begin(),s.end(),greater<char>())
            =))


            • 0
              NguyenVietHung    11:13 p.m. 4 Tháng 2, 2022

              Mình không biết khống chế sort thế nào phải sort begin -> end rồi reverse lại chuỗi =((


              • -2
                LeQuangMinh0903    7:17 p.m. 9 Tháng 11, 2021

                bí thuật sort()

                1 phản hồi

                • -9
                  phuoc    3:01 p.m. 8 Tháng 11, 2021

                  Bình luận bị ẩn vì nhiều phản hồi tiêu cực. Nhấp vào đây để mở.

                  2 phản hồi

                  • -23
                    minhtuanitk20    2:10 p.m. 7 Tháng 11, 2021

                    Bình luận bị ẩn vì nhiều phản hồi tiêu cực. Nhấp vào đây để mở.

                    2 phản hồi