[Buổi 9][Mảng một chiều][WS] Bài 1: Mini Data Analyzer
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
- Đọc n và mảng.
- Tính tổng và trung bình.
- Tìm min, max và index đầu tiên của max.
- Đếm số dương, số âm và số chẵn.
- 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