UOC1 - Tính tổng ước 1

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

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Go, Java, Pascal, Perl, PHP, Python, Ruby, Rust, Scratch, Swift

Cho hai số nguyên dương ~A~ và ~B~. Tính tổng các số nguyên dương là ước của ~A~ nhưng không là ước của ~B~.

Input

  • Gồm một dòng duy nhất chứa hai số nguyên dương ~A~ và ~B~ được ghi cách nhau một dấu cách.

Giới hạn:

  • ~80\%~ số điểm có ~A, B ≤ 10^6~
  • ~20\%~ số điểm có ~10^6 < ~A~ ≤ 10^9~

Output

  • Một dòng duy nhất ghi số nguyên là đáp số bài toán.

Sample

Input #1
15 25
Output #1
18

Hint

  • Các số nguyên dương là ước của ~15~ nhưng không là ước của ~25~ gồm: ~3~ và ~15~. Do đó tổng bằng ~18~.

Problem source: Chuyên Sơn La Online Judge


Bình luận

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



  • 11
    hohoanghai5042011  đã bình luận lúc 1, Tháng 1, 2024, 5:26

    #include<bits/stdc++.h>

    using namespace std;int main(){ long long a,b,i,s=0; cin>>a>>b; for(i=1;i<=sqrt(a);i++) { if(a%i==0&& b%i!=0) s+=i; if(a%i==0&& b%(a/i)!=0) s+=a/i; } if(int(sqrt(a))==sqrt(a)) if(b%int(sqrt(a))!=0) s=s-int(sqrt(a)); cout<<s; return 0; } full ac cho em xin 1 vote


  • -6
    Kphong  đã bình luận lúc 13, Tháng 10, 2023, 10:53

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


  • -8
    Kphong  đã bình luận lúc 13, Tháng 10, 2023, 10:52

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


    • -14
      hhhhhhhhhh  đã bình luận lúc 13, Tháng 10, 2023, 11:25

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