1039 - OLP 2018 - Treo cờ

Tạo bởi: CLB Olympic Tin học HUTECH

Mô tả yêu cầu

Trong một hội nghị thuật toán thế giới, Ban tổ chức đã treo cờ dọc theo đường dẫn vào trung tâm hội nghị, có N lá cờ được đánh số từ 1 đến N, lá cờ thứ i có màu là A_i.

1603119020-b744282a6c-TreoCo.png

Tuy nhiên, sau khi treo cờ lên, ngài Chủ tịch hội nghị nhận thấy dãy cờ có quá nhiều màu khác nhau là không hợp lí. Bộ phận phụ trách rà soát và cho biết còn dư M lá cờ, được đánh số từ 1 đến M, lá cờ thứ j có màu là B_j nên họ quyết định sẽ thay thế một số lá cờ để được dãy cờ có ít màu nhất có thể. Lá cờ bị thay xuống hiển nhiên sẽ không được sử dụng trong các lần thay thế tiếp theo vì đã bị rách. Đồng thời lá cờ đã được gắn lên cũng không được phép gỡ xuống.

Yêu cầu: Hãy tìm cách thay một số (hoặc giữ nguyên) lá cờ đã treo bằng một số lá cờ trong số cờ còn dư sao cho tổng số màu xuất hiện trên dãy cờ chính thức là ít nhất.

Dữ liệu vào

Đọc từ file văn bản có dạng:

  • Dòng đầu ghi số nguyên NM là số cờ đã treo và số cờ còn dư
  • Dòng thứ 2 ghi N số nguyên A_i cho biết màu của các lá cờ đã treo
  • Dòng thứ 3 ghi M số nguyên B_j cho biết màu của các lá cờ còn dư
  • Các số trên cùng dòng cách nhau bởi dấu khoảng trắng.

Điều kiện:

  • 0 \leq A_i \leq 255
  • 1 \leq i \leq N
  • 0 \leq B_j \leq 255
  • 1 \leq j \leq M

Chú ý:

  • Có 40% số test có N \leq 1000; M = 1;
  • Có 30% số test có N \leq 1000; M \leq 1000;
  • Có 30% số test còn lại có N \leq 10^5; M \leq 10^5.

Dữ liệu ra

Ghi ra file văn bản gồm một dòng duy nhất ghi số nguyên K là số màu còn lại của dãy cờ chính thức sau khi thực hiện thay thế.

Ví dụ

Dữ liệu vào Sao chép
9 4
1 2 5 4 8 9 3 5 5
2 5 5 5
Dữ liệu ra Sao chép
3

Gợi ý/Hướng dẫn

Dãy cờ mới sẽ là: 1 2 5 5 2 5 5 5 5. Các số tô đậm mô tả lá cờ được thay thế.

Đăng nhập để làm bài
Thông tin
Giới hạn thời gian 1 giây
Giới hạn bộ nhớ 128 MB