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
#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
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.