MANG - Bài tập mảng 1 chiều tổng hợp

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, PyPy, Python, Ruby, Rust, Scratch, Swift

Cho dãy ~n~ số nguyên ~a_1, a_2, ..., a_n~.

Hãy tính và in ra những thông tin sau:

  • Tổng các số của dãy.
  • Số lượng số chẵn có trong dãy.
  • Phần tử nguyên dương có chỉ số lớn nhất trong dãy, nếu không có số nào thỏa mãn trong dãy thì in ra số 0.

Input

  • Dòng đầu chứa số nguyên dương ~n~ ~(n ≤ 100)~;
  • Dòng thứ hai chứa ~n~ số nguyên ~a_1, a_2, ..., a_n~ ~(-1000 ≤ a_i ≤ 1000)~.

Output

  • Một dòng chứa ba số nguyên tương tứng với câu trả lời cho ba yêu cầu của bài toán.

Sample

Input #1
5
3 2 6 8 5
Output #1
24 3 5

Giải thích:

  • Tổng các phần tử là 24
  • Số lượng số chẵn là 3
  • Số 5 là phần tử nguyên dương có chỉ số lớn nhất.
Input #2
6
5 -3 6 8 7 -13
Output #2
10 2 7

Giải thích:

  • Tổng các phần tử là 10
  • Số lượng số chẵn là 2
  • Số 7 là phần tử nguyên dương có chỉ số lớn nhất.

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


Bình luận

Please read the guidelines before commenting.



  • 0
    minhtai2013vn  đã bình luận lúc 3, Tháng 4, 2026, 12:21

    lọ cho anh em #include <bits/stdc++.h> using namespace std; long long n,i,a[1000005],t=0,kq=0,k; int main() { cin>>n; for(i=1;i<=n;i++) { cin>>a[i]; if(a[i]%2==0) kq++; t=t+a[i]; if(a[i]>0) k=a[i]; } cout<<t<<" "; cout<<kq<<" "; cout<<k; return 0; } full ac cho ae


  • 0
    hgb_donut  đã bình luận lúc 3, Tháng 12, 2025, 14:16

    include <bits/stdc++.h>

    using namespace std; long long n; long long a[1001]; int main() { long long s=0; long long d=0; long long t=0; cin >>n; for(int i=1;i<=n;i++){ cin >>a[i]; s+=a[i];} for(int i=1;i<=n;i++){ if(a[i]%2==0) d++; } for(int i=n;i>=1;i--) if(a[i]>0){ t=a[i]; break; } cout <<s<<" "<<d<<" "<<t; return 0; }


    • 0
      minhtai2013vn  đã bình luận lúc 3, Tháng 4, 2026, 12:21

      include <bits/stdc++.h>

      using namespace std; long long n,i,a[1000005],t=0,kq=0,k; int main() { cin>>n; for(i=1;i<=n;i++) { cin>>a[i]; if(a[i]%2==0) kq++; t=t+a[i]; if(a[i]>0) k=a[i]; } cout<<t<<" "; cout<<kq<<" "; cout<<k; return 0; } full ac cho ae


  • 0
    congtyluuthaibao1978  đã bình luận lúc 27, Tháng 11, 2025, 11:43

    include <bits/stdc++.h>

    using namespace std;

    int main(){ ios::syncwithstdio(false); cin.tie(nullptr);

    int n;
    cin >> n;
    long long sum = 0;
    int count_even = 0;
    int last_positive = 0;
    
    for(int i = 0; i < n; i++){
        int x;
        cin >> x;
        sum += x;
        if(x % 2 == 0) count_even++;
        if(x > 0) last_positive = x;  // vì ta đọc theo thứ tự, nên phần tử dương cuối cùng được cập nhật
    }
    
    cout << sum << " " << count_even << " " << last_positive;
    return 0;
    

    }


  • 0
    Minh_Khoa  đã bình luận lúc 17, Tháng 10, 2024, 7:07

    Cho mình hỏi test 1 2 là gì vậy


  • -2
    taco29  đã bình luận lúc 27, Tháng 9, 2023, 11:39

    Phần tử nguyên dương có chỉ số lớn nhất là gì vậy ạ


    • 0
      hoangvu276  đã bình luận lúc 10, Tháng 12, 2023, 10:30

      là a[i]>=0 có i lớn nhất


      • 0
        duydoc86  đã bình luận lúc 15, Tháng 4, 2024, 17:50

        phải là lớn hơn không thôi chứ bro


  • 0
    huyhoanhbo59  đã bình luận lúc 8, Tháng 8, 2023, 7:40

    cho em hỏi output 2 ra 0 chứ sao lại 7 ạ


    • 0
      kid291997  đã bình luận lúc 20, Tháng 8, 2023, 12:03

      Phần tử nguyên dương có chỉ số lớn nhất trong dãy, với số -13 < 0 rồi thì vẫn xét tiếp đến phần từ bé hơn là 7 mà 7 lớn hơn 0 thì output vẫn là 7, output chỉ ra 0 khi trong dãy full số âm kia