Submit solution
Points:
1.00 (partial)
Time limit:
1.0s
Memory limit:
256M
Author:
Problem type
Allowed languages
C, C#, C++, Go, Java, Pascal, Perl, PHP, Python, Ruby, Rust, Scratch, Swift
Số hoàn hảo (số hoàn thiện) là một số nguyên dương mà tổng các ước nguyên dương của nó (không bao gồm ước lớn nhất) bằng chính nó.
Ví dụ:
~ 6 = 1 + 2 + 3 ~ là một số hoàn hảo.
Nhiệm vụ của bạn là viết chương trình kiểm tra 1 số nguyên nhập từ bàn phím có phải số hoàn hảo hay không!
Input
- Số nguyên ~n~ cần kiểm tra
Giới hạn
- ~|n| \le 10^9~
Output
- In ra
YES
nếu ~n~ là số hoàn hảo - In ra
NO
nếu ~n~ không phải số hoàn hảo
Sample
Input #1
6
Output #1
YES
Comments
xin chao các bạn
khos quas
khó quá các bạn ơi!
M không được bố mẹ m giáo dục cách ăn nói à?? Bây giờ t nhắc nhở lại còn nói "kệ mẹ t" nữa chứ. Xem lại bản thân m và xem lại cả những dòng comment bẩn thỉu của m đi!!!
kiệt an hùng thực phương nguuu lon
hello ae
nguyên nhân gì xin các bạn chia sẽ giúp mình với
Sai ở vòng for. for(ll i=2;i<=n;i++) là bạn lấy cả ước n luôn rồi.
ai code bài này AC bằng c++ cho mình xin code với, cứ bị TLE quài á
<bits/stdc++.h> là thư viện chuẩn có chứa cả <iostream> rồi bn nhé!
Test 5 là số âm nên mấy bn ko cần làm check số hoàn hảo cho số âm nhé
đọc đề nhầm tý là out luôn =))
dạ cho mình hỏi code mình sai chỗ nào vậy ạ, mình bị sai ngay test case đầu tiên luôn bool hoanthien(int n) { int temp = 1; for (int i = 2; i <= sqrt(n); i++) { if (n % i == 0) { temp += i; if (i != n / i) { temp += n / i; } } } return temp == n; }
Thứ nhất: tại i = 1. thì temp += 1 && tmp += n như này đã vi phạm đoạn tính ước là chính nó. Thứ 2: Bạn thiếu case n = 1 thì nó không phải là số hoàn hảo nhé vì shh không bao gồm ước là chính nó.
cho em hỏi test case 5 là gì v ạ?
Mình nghĩ là liên quan kiểu dữ liệu ấy. Y/c 10^9 lận