Tổng hợp điểm số
Trạng thái
Đề bài
Một lớp học có \(N\) học sinh. Điểm kiểm tra của mỗi học sinh là một số nguyên từ \(0\) đến \(10\). Hãy tính tổng điểm, điểm cao nhất và điểm thấp nhất của lớp.
Đọc dữ liệu từ tệp FILE01.INP và ghi kết quả vào tệp FILE01.OUT.
Dữ liệu vào
- Dòng đầu chứa số nguyên \(N\).
- Dòng thứ hai chứa đúng \(N\) số nguyên \(a_1,a_2,\ldots,a_N\).
Dữ liệu ra
Tệp FILE01.OUT gồm đúng ba dòng:
- Dòng 1: Tổng điểm của tất cả học sinh.
- Dòng 2: Điểm cao nhất.
- Dòng 3: Điểm thấp nhất.
Ràng buộc
- \(1 \le N \le 10^5\).
- \(0 \le a_i \le 10\).
Subtask
- Subtask 1 (40%): \(N \le 10\).
- Subtask 2 (60%): Không có ràng buộc bổ sung.
Sample Input 1
5
8 7 9 6 10
Sample Output 1
40
10
6
Giải thích
Tổng điểm là \(40\); điểm cao nhất là \(10\) và điểm thấp nhất là \(6\).
Hướng dẫn lập trình Python
Bước 1. Đọc dữ liệu từ tệp: sử dụng with open(), readline(), split() và map().
Bước 2. Xử lý: có thể sử dụng sum(a), max(a) và min(a).
Bước 3. Ghi kết quả: dùng write() để ghi từng dòng; "w" tạo tệp mới hoặc ghi đè tệp đã tồn tại.
Khung chương trình mẫu (học sinh hoàn thiện):
# Buoc 1. Doc du lieu
with open("FILE01.INP", "r", encoding="utf-8") as f:
n = int(f.readline())
a = list(map(int, f.readline().split()))
# Buoc 2. Xu ly du lieu
tong = ... # Tinh tong diem
lon_nhat = ... # Tim diem cao nhat
nho_nhat = ... # Tim diem thap nhat
# Buoc 3. Ghi ket qua
with open("FILE01.OUT", "w", encoding="utf-8") as f:
f.write(str(tong) + "\n")
# Ghi diem cao nhat
# Ghi diem thap nhat
Hãy thay các dấu ... bằng biểu thức thích hợp và bổ sung hai lệnh ghi còn thiếu.
Thông tin
Thông tin bài tập
Điểm
100
Giới hạn thời gian:
3.0s
Giới hạn bộ nhớ:
256 M
I/O
Đầu vào: FILE01.INP
Đầu ra: FILE01.OUT
Tác giả
Loại đề bài
A06 - Nhập môn: Mảng một chiều, A10 - Nhập môn: Đọc ghi file văn bản
Ngôn ngữ cho phép
C, C++, Java, Pascal, Python