Tải bản đầy đủ

Bài tập dạng cái túi

Kinh doanh đất đai
Tại thành phố Tân An, một người nọ được thừa kế một khoản tiền N triệu đồng, người đó quyết
định đầu tư vào việc kinh doanh bất động sản bằng cách mua các mảnh đất hình vuông kích thước
là các số nguyên, biết rằng mỗi mét vuông đất có giá 1 triệu đồng. Hãy chỉ cách cho người nọ
mua đất sao cho tổng số tiền mua đất đúng bằng N triệu đồng và số mảnh đất mua được càng ít
càng tốt.
Dữ liệu: Vào từ file văn bản DAT.INP gồm số nguyên dương N duy nhất có giá trị không quá
10000.
Kết quả: Ghi ra file văn bản DAT.OUT một dãy số nguyên dương xếp theo thứ tự giảm dần là
kích thước mảnh đất mua được.
Ví dụ:
DAT.INP: 30
DAT.OUT: 5 2 1

===================================================================/
BÀI TOÁN ĐỔ NƯỚC
Cho một thùng T dung tích có thể xem là rất lớn và N bình có dung tích lần lượt là D 1, D2, D3, . . .
DN (đơn vị là lít). Liệu có thể dùng N bình đã cho để đổ vào thùng T đúng V lít nước hay không?
Nếu được hãy tìm cách đổ sao cho số lượng bình đem sử dụng là ít nhất (mỗi bình có thể dùng
nhiều lần). Nếu không thì ghi -1


-Dữ liệu vào cho bởi file NUOC.INP gồm:

NUOC.INP

* Dòng đầu ghi thể tích nước cần đổ V

900

* Dòng thứ 2 ghi số N

5

* Các dòng tiếp theo ghi giá trị dung tích của các bình, mỗi giá trị cách nhau ít

1 20 45 60 85

nhất một dấu cách
-Dữ liệu ra bởi file NUOC.OUT là:

NUOC.OUT

* Dòng thứ 1 ghi số lượng bình đã dùng

12

* Dòng thứ 2 trở đi ghi các loại bình được dùng, số lượng của mỗi loại.

Loai 45 lit : 3
Loai 85 lit : 9



Đáp án câu hỏi 1 :
Áp dụng thuật toán quy hoạch động để giải bài toán trên.
TEST

NUOC.INP

NUOC.OUT


1

900
5
1 20 45 60 85

12
Loai 45 lit: 3
Loai 85 lit: 9

2

15000

13

17

Loai 1456 lit : 10

100 20000 450 1456 600 85 150
458 635 780 145 321 125 456 425
111

Loai 150 lit : 1

150

-1

3

Loai 145 lit : 2

17
100 200 450 1456 600 85 1500 458
635 780 145 321 125 456 425 111
4

950000

654

17

Loai 200 lit : 1

100 200 450 1456 600 85 1400 458
635 780 145 321 125 456 425 111

Loai 1456 lit : 650
Loai 600 lit : 1
Loai 1400 lit : 2

5

6

1000000

688

17

Loai 1456 lit : 674

100 200 450 1456 600 85 1400 458
635 780 145 321 125 456 425 111

Loai 1400 lit : 13

9000000

6183

17

Loai 200 lit : 1

100 200 450 1456 600 85 1400 458
635 780 145 321 125 456 425 111

Loai 1456 lit : 6175

Loai 456 lit : 1


Loai 600 lit : 1
Loai 1400 lit : 6

BÀI ĐỔI TIỀN (BÀI 27 TRONG QUYỂN BT QHĐ)


Đề thì Olympic 30/4:
Xe buýt:
Trên một tuyến xe đường ở thành phố du lịch X có ô tô buýt công
cộng phục vụ việc đi lại của du khách. Bến xe buýt có ở trừng km
của tuyến đường. Mỗi lần đi qua bến xe đều đỗ lại cho khách lên
xuống. Mỗi bến xe xuất phát từ nó, nhưng mỗi xe chỉ chạy không
quá b km kể từ bến xuất phát của nó. Hành khách khi đi xe phải
trả tiền cho độ dài đoạn đường mà họ ngồi trên xe. Cước phí cần
trả để đi đoạn đường độ dài i là Ci (i=1,2...cool.gif. Một du khách
xuất phát từ một bến nào đó muốn đi dạo L km trên tuyến đường
nói trên. Hỏi ông ta phải lên xuống xe như thế nào để tổng số
tiền phải trả là nhỏ nhất ?
Dữ liệu vào:
Dòng đầu tiên chứa 2 số nguyên dương b, L (b<=20; L<=10000)
Dòng thứ 2 chứa b số nguyên dương C1, C2, ... , Cb được ghi
cách nhau bởi một dấu trắng.
Dữ liệu ra:
Kết quả ghi vào file văn bản ghi một số duy nhất là chi phí nhỏ
nhất tìm được.
Vd:
Input:
10 15
12 21 31 40 49 58 65 79 90 101
Output:
142



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×