Tặng Quà (QUA – HSG 12 Nam Định 2021–2022)
Xem dạng PDFĐộ khó: Dễ (1/4 điểm)
📖 Bài giải chi tiết: 👉 Bấm vào đây để xem lời giải cụ thể của bài này trên blog
⚠️ Lưu ý: hãy đảm bảo em đã thật sự cố gắng tự làm bài trước, rồi mới bấm vào xem bài giải nhé!
🎓 Khóa học Lập trình Thuật toán thi đấu của thầy Nguyễn Việt Nam Sơn – 111 buổi video, kèm cặp cá nhân, luyện thi chuyên Tin · HSG Tin học · Tin học trẻ · đội tuyển quốc gia · Olympic/ICPC. 👉 Xem chi tiết khóa học · Thành tích học viên
📞 Đăng ký học: Zalo 0767 666 702 · Facebook Nguyễn Việt Nam Sơn · 🌐 laptrinhthuattoan.blogspot.com
Lưu ý: Trên web đọc dữ liệu từ bàn phím (stdin) và in ra màn hình (stdout).
Nguồn: Đề thi HSG Tin học 12 tỉnh Nam Định 2021 – 2022, Bài 1 – Tặng quà (QUA.*, QUA.INP, QUA.OUT).
Trong một trận đấu bóng đá, người ta bán được ~N~ vé ~(N < 3 \cdot 10^5)~. Mỗi khán giả có một vé, trên vé ghi số nguyên dương. Người ta muốn tặng quà cho những người có vé thuộc dãy số hạnh phúc. Dãy số hạnh phúc là một dãy số chỉ bao gồm các số hoàn thiện.
(Số hoàn thiện được định nghĩa là một số mà nó có tổng các ước không kể nó bằng chính nó. VD: ~6~ có 3 ước thỏa mãn là ~1, 2, 3~ tổng các ước là ~6~.)
Yêu cầu: Từ số vé bóng đá đã cho, em hãy tìm ra những người được tặng quà thỏa mãn yêu cầu trên.
Dữ liệu vào
- Dòng đầu tiên là số nguyên ~N~ là số lượng vé đã bán ~(1 \le N \le 3 \cdot 10^5)~.
- Dòng tiếp theo ghi ~N~ số nguyên dương ~A_1, A_2, \ldots, A_N~ ~(0 < A_i < 3 \cdot 10^5~, ~i = 1, 2, \ldots, N)~. Mỗi số cách nhau một khoảng trắng (dấu cách).
Kết quả
- Dòng đầu tiên là số lượng người được tặng quà. Nếu không có ai được tặng quà thì đưa ra số ~0~.
- Dòng thứ hai là số vé được tặng quà theo thứ tự xuất hiện trong tệp dữ liệu vào, mỗi số cách nhau một dấu cách.
Giới hạn
- ~1 \le N < 3 \cdot 10^5~, ~0 < A_i < 3 \cdot 10^5~.
Sample Input 1
9
5 18 7 4 6 13 8 11 27
Sample Output 1
1
6
Giải thích
Trong dãy chỉ có số ~6~ là số hoàn thiện (~1 + 2 + 3 = 6~). Chẳng hạn số ~18~ có tổng các ước không kể nó là ~1 + 2 + 3 + 6 + 9 = 21 \ne 18~.
Bình luận