[Buổi 9][Mảng một chiều][WS] Bài 1: Mini Data Analyzer


LÀM BÀI

Points: 100
Time limit: 2.0s
Memory limit: 256M

Author:
Problem types
Allowed languages
C++

Mini Data Analyzer

Bối cảnh

Bạn đang viết công cụ phân tích nhanh một dãy số. Dữ liệu phải được lưu lại để tạo nhiều thống kê từ cùng một mảng.

Workshop tổng hợp các mẫu duyệt cơ bản của B09: tổng, trung bình, min/max, vị trí và đếm theo điều kiện.

Yêu cầu

  1. Đọc n và mảng.
  2. Tính tổng và trung bình.
  3. Tìm min, max và index đầu tiên của max.
  4. Đếm số dương, số âm và số chẵn.
  5. In kết quả theo định dạng yêu cầu.

Yêu cầu tổ chức code

Không dùng vector/STL; dữ liệu phải được lưu trong mảng tĩnh.

Online Judge chủ yếu chấm output. Yêu cầu tổ chức code giúp bảo đảm học viên luyện đúng kỹ năng của buổi học.

Input

Dòng 1: n. Dòng 2: n số nguyên.

Output

5 dòng: SUM x; AVG y với 2 chữ số thập phân; MIN x; MAX x INDEX i; POS p NEG q EVEN e.

Ràng buộc

1 ≤ n ≤ 2000, |a[i]| ≤ 10^9.

Ví dụ 1

Input

5
1 2 3 4 5

Output

SUM 15
AVG 3.00
MIN 1
MAX 5 INDEX 4
POS 5 NEG 0 EVEN 2

Giải thích

Tổng 1+2+3+4+5=15, trung bình 3.00. Min=1, max=5 ở index 4. Có 5 số dương, 0 số âm và 2 số chẵn.

Ví dụ 2

Input

4
-2 0 7 10

Output

SUM 15
AVG 3.75
MIN -2
MAX 10 INDEX 3
POS 2 NEG 1 EVEN 3

Giải thích

Tổng bằng 15 nên trung bình 3.75. Min=-2, max=10 ở index 3. Số dương: 2; âm: 1; chẵn: -2,0,10 nên 3.

Thông tin học tập

  • Module: M03
  • Buổi: B09
  • Loại bài: WORKSHOP
  • Độ khó: Medium
  • Concepts: static arrays, traversal, sum, average, min/max, index tracking, conditional counting
  • Giới hạn kiến thức: B01-B09
  • Time limit: 2 second(s)
  • Memory limit: 256 MB
  • Point: 100

Comments

There are no comments at the moment.

Zalo