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.|

TARDY - Lập lịch giảm thiểu trể hạn

Có n công việc đánh số từ 1 đến n và một máy để thực hiện chúng. Biết:

  • Pi là thời gian cần thiết để hoàn thành công việc i.
  • Di là thời hạn hoàn thành công việc i.

Máy bắt đầu hoạt động từ thời điểm 0. Mỗi công việc cần được thực hiện liên tục từ lúc bắt đầu cho tới khi kết thúc, không cho phép ngắt quãng. Giả sử ci là thời điểm hoàn thành công việc i. Khi đó, nếu ci > di ta nói công việc i bị hoàn thành trễ hạn, còn nếu ci ≤ di thì ta nói công việc i được hoàn thành đúng hạn.

Yêu cầu: Tìm trình tự thực hiện các công việc sao cho số công việc hoàn thành trễ hạn là ít nhất.

Tham khảo thuật toán More

Input

  • Dòng đầu tiên chứa số nguyên dương n (0 < n ≤ 1000).
  • Dòng thứ hai chứa n số nguyên dương p1, p2, ..., pn (0 < pi ≤ 10000).
  • Dòng thứ ba chứa n số nguyên dương d1, d2, ..., dn (0 < di ≤ 10000).

Output

  • Dòng đầu tiên ghi số lượng công việc bị hoàn thành trễ hạn theo trình tự tìm được.
  • Dòng tiếp theo ghi n số nguyên dương là chỉ số của các công việc theo trình tự thực hiện tìm được.

 

Example

Input:
6
2 4 1 2 3 1
3 5 6 6 7 8

Output:
2
1 3 4 6 2 5

Được gửi lên bởi:special_one
Ngày:2009-10-17
Thời gian chạy:1s
Giới hạn mã nguồn:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Ngôn ngữ cho phép:C CSHARP CPP JAVA PAS-FPC

© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.