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

COMASIGN - Phân máy thực tập

Trung tâm máy tính cần phân máy thực hành cho N lớp sinh viên (được đánh số từ 1 đến N). Lớp sinh viên i có Xi sinh viên. Trong trung tâm có M (M > N) phòng máy được đánh số từ 1 đến M. Phòng máy j có Yj máy. Để đảm bảo việc hướng dẫn thực hành, mỗi sinh viên cần có một máy, ngoài ra còn cần một máy cho giáo viên hướng dẫn. Không được phép di chuyển máy từ phòng máy này sang phòng máy khác.

Yêu cầu: Xác định số lượng lớn nhất các lớp sinh viên có thể đồng thời phân bố mỗi lớp vào một phòng máy và sao cho trong mỗi phòng máy mỗi sinh viên có một máy riêng để làm việc và ngoài ra còn một máy dành cho giáo viên hướng dẫn.

Dữ liệu vào:

  • Dòng đầu tiên chứa hai số nguyên N,M (1 <= N <= M <= 20000);
  • Dòng thứ hai chứa N số nguyên X1, ..., XN (1 <= Xi <= 21000, 1 <= i <= N);
  • Dòng thứ ba chứa M số nguyên Y1, ..., YM (1 <= Yj <= 21000, 1 <= j <= <).

Dữ liệu ra:

  • Dòng đầu tiên ghi P là số lượng lớn nhất lớp sinh viên tìm được;
  • Dòng thứ hai ghi N số, trong đó số thứ cho biết chỉ số phòng máy phân cho lớp theo cách phân bố tìm được (ghi số 0 nếu lớp i không được phân phòng máy).

Example

Input:
3 4
5 3 4
3 5 3 6 Output: 2
0 2 4

Được gửi lên bởi:noname00.pas
Ngày:2017-12-18
Thời gian chạy:0.100s-1s
Giới hạn mã nguồn:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Ngôn ngữ cho phép:C-CLANG C CSHARP C++ 4.3.2 CPP CPP14 CPP14-CLANG C99 JAVA PAS-FPC PYTHON PYTHON3
Nguồn bài:Bài tập Ôn HN 2016 (Thầy Nguyễn Đức Nghĩa)

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