Câu hỏi:

12/07/2024 1,494

Chia kẹo

Xét bài toán: Đội Trúc Xanh gồm 3 bạn An, Thuỳ và Minh đứng đầu trong cuộc thi về ca dao, tục ngữ Việt Nam. Cách trao giải của Ban tổ chức cũng khá độc đáo. Trên bàn bày một dãy n túi kẹo, trên túi kẹo thứ i có ghi số nguyên ai, là số lượng kẹo trong túi (ai ≥ 0). Đội thắng cuộc được phép chọn các túi kẹo có số lượng chia hết cho 3. Đội Trúc Xanh quyết định sẽ chọn hết tất cả các túi có kẹo và được phép lấy. Sau đó từ mỗi túi, mỗi người ăn một chiếc kẹo. Phần kẹo còn lại được tập trung và chia đều để mỗi bạn mang về cho em ở nhà. Hãy xác định, mỗi bạn đã ăn bao nhiêu cái kẹo và mang về nhà bao nhiêu cái.

Chia kẹo Xét bài toán: Đội Trúc Xanh gồm 3 bạn An, Thuỳ và Minh  (ảnh 1)

Em hãy lập trình giải bài toán trên. Trước khi lập trình cần tóm tắt bài toán, xác định thuật toán và cách tổ chức dữ liệu.

Dữ liệu: Nhập vào từ thiết bị vào chuẩn:

- Dòng đầu tiên chứa số nguyên n (1n105).

- Dòng thứ hai chứa n số nguyên a1, a2, …, an (0a, 104, i = 1, 2, …, n)

Kết quả: Đưa ra thiết bị ra chuẩn hai số nguyên là số lượng kẹo tương ứng với số kẹo mỗi bạn đã ăn và số kẹo mỗi bạn mang về, các số đưa ra trên cùng một dòng.

Ví dụ:

Input

Output

9

25      16      11      12      14      0        8        30      21

3

18

Quảng cáo

Trả lời:

verified
Giải bởi Vietjack

Tóm tắt bài toán (Mô hình toán học)

Cho:

- Số nguyên n, (1 n105) và n số nguyên a1, a2, .., an (0 ≤ ai  ≤104, i = 1, 2, .., n).

Yêu cầu:

- Xác định k là số lượng ai lớn hơn 0 và chia hết cho 3.

- Tính tổng (ai – 3)/3 với các ai tìm được.

Thuật toán và cách tổ chức dữ liệu

- Bước 1. Nhập dữ liệu vào (dùng kiểu danh sách cho dãy n số nguyên).

- Bước 2. Chuẩn bị tích luỹ số lượng và tổng: k = 0, s = 0.

- Bước 3. Duyệt với mọi i: Nếu ai > 0 và ai chia hết cho 3 thì tăng k và tích luỹ ai vào s.

- Bước 4. Đưa ra k và (s - 3k)/3.

Tham khảo chương trình sau:

Chia kẹo Xét bài toán: Đội Trúc Xanh gồm 3 bạn An, Thuỳ và Minh  (ảnh 2)

CÂU HỎI HOT CÙNG CHỦ ĐỀ

Lời giải

Tóm tắt bài toán (Mô hình toán học)

Cho: Dãy A gồm n số nguyên.

Yêu cầu: Đưa ra phân tử trung vị (phần tử nằm ở giữa dãy đã sắp xếp).

Thuật toán và chọn kiểu dữ liệu cho các biến

- Bước 1. Nhập số nguyên n, nhập danh sách A chứa n số nguyên.

- Bước 2. Sắp xếp danh sách A.

- Bước 3. Đưa ra phần tử A [len (A) //2].

Tham khảo chương trình sau:

Trung vị Xét bài toán: Cho dãy số nguyên A = (a1, a2, …, an). Phần tử x  (ảnh 1)

Ví dụ một số bộ dữ liệu để kiểm thử chương trình:

Trung vị Xét bài toán: Cho dãy số nguyên A = (a1, a2, …, an). Phần tử x  (ảnh 2)

Lời giải

Tóm tắt bài toán (Mô hình toán học)

Cho: nn - 1 số nguyên a1, a2, …, an-1 . Trong đó aiaj, với i j, 1ainvới mọi i.

Yêu cầu: Tìm số bị thiếu không vượt quá n.

Thuật toán và cách tổ chức dữ liệu

- Nếu có đầy đủ n số thì tổng các số sẽ là n×(n+1)2

- Vậy số còn thiếu là: n×(n+1)2i=0n2ai

- Không cần phải dùng dãy để lưu các số nhập vào.

- Các bước của thuật toán:

          + Bước 1. Nhập n.

          + Bước 2. Nhập và tính tổng các ai

          + Bước 3. Đưa ra kết quả.

Tham khảo chương trình sau:

Số bị thiếu Tâm nhờ một người bạn tạo dãy số nguyên dương a1, a2,  (ảnh 1)

Lời giải

Bạn cần đăng ký gói VIP ( giá chỉ từ 199K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.

Nâng cấp VIP