cmpint

Xem PDF

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

Cho 2 số nguyên dương lớn \(a, b\) (nhiều nhất 100 chữ số).

Hãy điền dấu \(>, <, =\) vào dấu 3 chấm

a ... b

Lưu ý trong input các số \(a, b\) có chứa số \(0\) ở đầu.

Example

Test 1

Input
010
11
Output
<

Bình luận


  • 1
    quan26052013    10:10 a.m. 17 Tháng 8, 2024

    \(\text{Sol Python: Xóa các chữ số 0 ở đầu, nếu bị IndexError(trường hợp N và M chỉ toàn số 0, in ra"="), không thì so sánh}\)

    Python
    try:
        N,M=list(input()),list(input())
        while M[0]=='0':del M[0]
        while N[0]=='0':del N[0]
        a,b=int(''.join(N)),int(''.join(M))
        print('<'if a<b else('>'if a>b else'='))
    except IndexError:print('=')
    


    • -1
      ngoquangvinhne    12:59 p.m. 31 Tháng 3, 2024

      rất dễ


      • 1
        thinhec12012007    7:00 p.m. 25 Tháng 2, 2024

        Mn tham khảo 2 cách làm của mình :
        // CACH 1

        include <bits/stdc++.h>

        using namespace std;
        string s1,s2;
        int main() {
        ios_base::sync_with_stdio(0);
        cin.tie();cout.tie();
        getline(cin,s1);
        getline(cin,s2);
        while(s1[0]=='0') s1.erase(0,1);
        while(s2[0]=='0') s2.erase(0,1);
        if(s1.size()>s2.size()) cout<<">";
        else if(s1.size()<s2.size()) cout<<"<";
        else {
        bool check=false;
        int tam=s1.size();
        for(int i=0;i<tam;i++) { if(s1[i]>s2[i])
        {
        cout<<">";
        check=true;
        break;
        }
        else if(s1[i]<s2[i])
        {
        cout<<"<";
        check=true;
        break;
        }
        }
        if(check==false) cout<<"=";
        }
        return 0;
        }

        //CACH 2

        include <bits/stdc++.h>

        using namespace std;
        string s1,s2;
        int main() {
        ios_base::sync_with_stdio(0);
        cin.tie();cout.tie();
        getline(cin,s1);
        getline(cin,s2);
        while(s1.size()<s2.size()) {
        s1='0'+s1;
        }
        while(s2.size()<s1.size()) { s2='0'+s2; } if(s1>s2) cout<<">";
        else if(s1<s2) cout<<"<";
        else cout<<"=";
        return 0;
        }


        • -2
          khanhhunghack    5:20 p.m. 1 Tháng 5, 2022 đã chỉnh sửa

          em hiểu rồi cảm ơn mng


          • 7
            wykw    5:55 p.m. 28 Tháng 8, 2021 chỉnh sửa 7

            Spoiler Alert


            • Bài này đề cập đến việc so sánh 2 số có độ dài lên đến 100. Vì vậy ta sẽ sử dụng string để so sánh
            • Đầu tiên chúng ta cần xóa đi những số 0 vô nghĩa ở đầu số để tiện việc so sánh
            • while (a[0] == '0') a.erase (0 , 1);
            • while (b[0] == '0') b.erase (0 , 1);
            • Cách giải của bài này như sau
            • Nếu a có độ dài lớn hơn b thì cout dấu >.
            • Nếu a có độ dài bé hơn b thì cout dấu <.
            • Nếu a có độ dài bằng b thì :
              • Nếu a > b cout dấu >.
              • Nếu a < b cout dấu <.
              • Nếu a = b cout dấu =.

            AC CODE : Tại đây

            1 phản hồi