H24

Dãy hoàn hảo

Trong một buổi học Toán, An được học khái niệm về số có tính chất đặc biệt. Số hoàn hảo là số có tổng các ước trừ nó ra thì bằng chính nó.

Ví dụ: Số 6 là số hoàn hảo vì 1+2+3=6

            Số 8 không phải là số hoàn hảo vì 1+2+4=7≠8

Cho một dãy số gồm n số nguyên a1, a2,…..an. Hãy giúp An đếm xem trong dãy có bao nhiêu số là số hoàn hảo.

Dữ liệu vào: Từ file văn bản hoanhao.inp:

-         Dòng 1: n số nguyên

-         Dòng 2: Các số nguyên a1, a2,…..an.

Kết quả: Ghi ra file văn bản hoanhao.out

-         Dòng 1: Số lượng số hoàn hảo

-         Dòng 2: Tổng của các số hoàn hảo có trong dãy

Nếu không tồn tại số hoàn hảo trong dãy thì ghi Dãy không có số hoàn hảo

NT
31 tháng 10 2021 lúc 0:50

#include <bits/stdc++.h>
using namespace std;
long long n,i,x,t,dem;
//chuongtrinhcon
bool kthh(long long n)
{
    if (n<=1) return(false);
    else
    long long t=0;
    for (long long i=1; i<=n/2;i++)
        if (n%i==0) t=t+i;
    if (t==n) return(true);
    else return(false);
}
//chuongtrinhchinh
int main()
{
    freopen("hoanhao.inp","r",stdin);
    freopen("hoanhao.out","w",stdout);
    cin>>n;
    t=0;
    dem=0;
    for (i=1; i<=n; i++)
    {
        cin>>x;
        if (kthh(x)==true)
        {
            dem++;
            t=t+x;
        }
    }
    cout<<dem<<endl;
    cout<<t;
    return 0;
}

 

Bình luận (0)