Bỏ qua đến nội dung
Kho đề HSG Tin 9Đề thi cấp tỉnh/thành phố

Bài 1 · Lập trình

Phân số

Điểm
6 điểm
Thời gian
1 giây
Bộ nhớ
1024MB
Tên chương trình
frac.*
Vào / Ra
frac.inp → frac.out

Đề bài

Hôm nay trong giờ học môn toán, An được học về phân số và bài tập cô giáo giao về nhà như sau:

Cho 4 số nguyên dương a,b,ca, b, c và dd, ta gọi phân số của chúng là tổng sau:

ab+cd\frac{a}{b} + \frac{c}{d}

Yêu cầu sắp xếp 4 số đã cho theo thứ tự sao cho phân số của chúng càng nhỏ càng tốt.

Bạn hãy giúp An làm bài tập trên.

Dữ liệu vàofrac.inp

Vào từ tệp văn bản frac.inp gồm một dòng chứa 4 số nguyên a,b,ca, b, c và dd (1≤a,b,c,c≤1091 \le a, b, c, c \le 10^9).

Kết quả rafrac.out

Ghi ra tệp văn bản frac.out 4 số là sắp xếp của các số ban đầu sao cho phân số của chúng càng nhỏ càng tốt. Nếu có một số cách thích hợp để sắp xếp lại các số, hãy in bất kỳ cách nào trong số chúng.

Ví dụ

Ví dụ 1

Dữ liệu vàofrac.inp
1 2 3 4
Kết quả rafrac.out
1 3 2 4

Giải thích

Trong ví dụ đầu tiên, ta có 2 cách sắp xếp lại các số là 1,3,2,41, 3, 2, 4 và 2,4,1,32, 4, 1, 3 đều cho phân số có giá trị nhỏ nhất là:

13+24=24+13=56\frac{1}{3} + \frac{2}{4} = \frac{2}{4} + \frac{1}{3} = \frac{5}{6}

Vì vậy câu trả lời là "1 3 2 4" hoặc "2 4 1 3".

Ví dụ 2

Dữ liệu vàofrac.inp
5 5 5 5
Kết quả rafrac.out
5 5 5 5

Giải thích

Trong ví dụ thứ hai, tất cả các số đều bằng nhau nên trong mọi cách sắp xếp, phân số luôn có giá trị là:

55+55=2\frac{5}{5} + \frac{5}{5} = 2

Vì vậy câu trả lời là "5 5 5 5".

Thuộc đề thi

Kỳ thi chọn học sinh giỏi cấp tỉnh THCS năm 2024 — Môn thi: Tin học – Bảng A

Quảng Ninh · Cấp tỉnh · Năm học 2023-2024