[Mảng 1 Chiều Cơ Bản]. Bài 2. Trung bình cộng nguyên tố

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
Input: stdin
Output: stdout

Nguồn bài:
28Tech
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Cho mảng số nguyên A[] gồm N phần tử, nhiệm vụ của bạn là tính trung bình cộng của các số là số nguyên tố trong dãy. Dữ liệu đảm bảo có ít nhất 1 phần tử là số nguyên tố trong dãy.


Đầu vào

Dòng đầu tiên là số nguyên dương N

Dòng thứ 2 gồm N số nguyên viết cách nhau một vài khoảng trắng


Giới hạn

1<=N<=1000

-10^3<=A[i]<=10^3


Đầu ra

In ra đáp án của bài toán lấy 3 số sau dấu phẩy.


Ví dụ :

Input 01
5
-911 234 151 347 231
Output 01
249.000
Input 02
3
1 2 5
Output 02
3.500

Bình luận

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



  • 0
    Nguyen0907  đã bình luận lúc 8, Tháng 8, 2025, 19:11 sửa 2

    include <bits/stdc++.h>

    using namespace std;
    
    #define fastIO() ios::sync_with_stdio(false); cin.tie(nullptr);
    #define ll long long
    
    int isPrime(int n) {
        if(n < 2) return false;
        for(int i = 2; i <= sqrt(n); i++) {
            if(n % i == 0) {
                return false;
            }
        }
        return true;
    }
    
    int main() {
        fastIO();
    
        int n; cin >> n;
        int a[n];
    
        for(int i = 0; i < n; i++){
            cin >> a[i];
        }
    
        int tong = 0;
        int count = 0;
        for(int i = 0; i < n; i++) {
            if(isPrime(a[i])) {
                tong += a[i];
                count += 1;
            }
        }
        cout<< fixed << setprecision(3) << tong/(double)count << endl;
    
        return 0;
    }
    

  • 0
    hngoc  đã bình luận lúc 6, Tháng 7, 2025, 10:53
    import math
    def nt(n):
        if n<2:return False
        for i in range(2,math.floor(math.sqrt(n))+1):
            if n%i==0:return False
        return True
    
    n=input()
    tmp=input().split()
    a=[int(i) for i in tmp]
    cnt=0
    s=0
    for x in a:
        if nt(x):
            s+=x
            cnt+=1
    
    ans=s/cnt
    print(f'{ans:.3f}')
    

  • 0
    hngoc  đã bình luận lúc 4, Tháng 7, 2025, 13:58
    import math
    def nt(n):
        if n<=1:return False
        if n==2 or n==3:return True
        if n%2==0 or n%3==0:return False
        for i in range(5,math.floor(math.sqrt(n))+1,6):
            if n%i==0 or n%(i+2)==0:return False
        return True
    
    n=input()
    tmp=input().split()
    a=[int(i) for i in tmp]
    cnt=0
    s=0
    for x in a:
        if nt(x):
            s+=x
            cnt+=1
    
    ans=s/cnt
    print(f'{ans:.3f}')
    

  • -8
    heo2912013  đã bình luận lúc 22, Tháng 2, 2025, 6:24

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