divisor02

Xem PDF



Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Clang++, Cobol, D, Groovy, Haskell, Java, JS, Kotlin, Lua, Node JS, ObjectiveC, OCaml, Output, Pascal, Perl, PHP, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch
Điểm: 200 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Khôi là một người rất hay gặp xui xẻo, và hay quên ghi dấu bằng.

Vì vậy anh ấy không thích con số \(13\), và những số chia hết cho \(13\) vì anh ấy cho rằng \(13\) là con số xui xẻo.

Hãy viết chương trình nhập vào một số nguyên dương \((\leq 10^{200})\), hãy cho biết Khôi không thích số đó hay không?

In ra "YES", nếu Khôi không thích. Ngược lại in ra "NO".

Example

Test 1

Input
26
Output
YES

Test 2

Input
25
Output
NO

Bình luận

  • dkm 10:32 a.m. 16 Tháng 1, 2025
    spoiler code ac (đây chỉ à code tham khảo hãy là một coder thông minh)
    //main idea: mình sẽ xử lý chuỗi số theo từng nhóm 3 chữ số rồi chuyển thành số rồi cộng trừ xen kẽ để kiểm tra xem số đó chia hết cho 13 không
    #include<bits/stdc++.h>
    using namespace std;
    int main(){
        string s;   //khởi tạo mảng
        cin>>s;
        long long ans=0,temp=0,d=0;
        for(int i=s.size()-1;i>=0;i-=3){
            if(i-2>=0){     //hàm if else để nhóm 3 chữ số của mỗi chuỗi rồi chuyển thành số
                i-=2;
                temp=temp*10+(s[i]-'0');
                i++;
                temp=temp*10+(s[i]-'0');
                i++;
                temp=temp*10+(s[i]-'0');
    
            }else{    
                for(int j=0;j<=i;j++){
                    temp=temp*10+(s[j]-'0');
                }
            }
            // cout<<temp<<endl;        //check xem kiểm tra số đã chuyển đúng chưa
            if(d%2==0){     // Cộng trừ xen kẽ vì biến ans ban đầu là 0 nên mình công trước rồi trừ sau xen kẽ
                ans+=temp;
            }else{
                ans-=temp;
            }
            temp=0; // reset biến lưu số
            d++;
        }
        // cout<<"ans: "<<ans<<endl;    // check xem kết quả ans
        if(ans%13==0){  //kiểm tra xem số đó chia hết cho 13 không
            cout<<"YES";
        }else{
            cout<<"NO";
        }
    }
    //Code by Đào Kiến Min :))
    
    • Vodangngoclam 7:19 p.m. 20 Tháng 5, 2024 đã chỉnh sửa
      Python
      n = int(input())
      if n % 13: print('NO')
      else: print('YES')
      
      • PY1ENguyenNamKhang 2:40 p.m. 15 Tháng 5, 2024

        n = int(input())
        if n % 13 == 0:
        print("YES")
        else:
        print("NO")

        • lamsauday246 7:38 p.m. 2 Tháng 10, 2022

          dùng python được mà

          • HMDuc 8:31 p.m. 13 Tháng 11, 2021 chỉnh sửa 2

            K nàm mà nòi có năn https://ideone.com/MGNgyk 🙂

            • donhatnam 10:00 p.m. 4 Tháng 4, 2021

              em ơi em, hãy nhìn giơi hạn /(n<=10^200)/

              • baonb789 9:51 p.m. 14 Tháng 3, 2021

                hi

                • MinhSharingan 12:36 p.m. 14 Tháng 3, 2021

                  ai help mk xử lí số lớn với

                  • cbl_hoc 10:26 a.m. 6 Tháng 12, 2020

                    code bạn bị tràn số vì giới hạn n tới 10^200 tức 200 chữ số

                    • THOANGLQDT 9:15 a.m. 5 Tháng 12, 2020

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