Giải bài trực tuyến

Problem hidden
This problem was hidden by Editorial Board member probably because it has incorrect language version or invalid test data, or description of the problem is not clear.

Từ tập các bài có trên SPOJ (acm)

1295. Cái túi ( Hard version )

Mã bài: HUGEKNAP

Cho N ðồ vật , vật i có khối lượng W[i] và giá trị là V[i] . Một cái túi có thể chịu ðược khối lượng tối ða là M , quá thì sẽ rách. Hãy tìm cách nhét 1 số ðồ vật vào trong túi sao cho túi không bị rách và tổng giá trị của các ðồ vật nhét vào là lớn nhất.

Các tiêu chí yêu cầu : Chương trình của bạn chạy ðúng , bộ nhớ thông báo ngoài status nhỏ hơn 850 KB ( với Free Pascal ) và nhỏ hơn 2850 KB ( với C++ ) thì bạn mới ðược coi là accept . Yêu cầu này ðơn giản là vì bài này nguồn gốc là dành cho Turbo Pascal nên khi add lên trên này thì ðành phải giới hạn với các bạn 1 chút .
Nâng time limit từ 3s lên 5s cho các bạn dễ làm hơn vậy.

Input

Dòng ðầu tiên là số nguyên T là số bộ test . ( 1 ≤ T ≤ 40 )
Mỗi bộ test sẽ có format như sau :
Dòng 1 : 2 số nguyên dương N , M ( 1 ≤ N ≤ 10000 , 1 ≤ M ≤ 1000 ) .
Dòng 2 : Gồm N số nguyên là W[i] ( 1 ≤ W[i] ≤ 1000 ) .
Dòng 3 : Gồm N số nguyên là V[i] ( 1 ≤ V[i] ≤ 10000 ) .

Output

Với mỗi bộ test :
Dòng ðầu tiên ghi ra giá trị lớn nhất có thể ðạt ðược và số K là số ðồ vật lựa chọn .
Dòng thứ 2 ghi ra chỉ số của K ðồ vật ðược chọn .

Example

Input:
1
3 4
1 2 3
4 5 6

Output:
10 2
1 3

Được gửi lên bởi:Nguyen Minh Hieu
Ngày:2007-02-06
Thời gian chạy:5s
Giới hạn mã nguồn:20000B
Ngôn ngữ cho phép:C++ 4.0.0-8 PAS fpc
Nguồn bài:Folklore - Sách thầy Hoàng , mục bài tập tự giải , bài số 1 .

SPOJ System © 2012 Sphere Research Labs | Projekty informatyczne i aplikacje na zamówienie. All Rights Reserved.