QOJ.ac

QOJ

Time Limit: 1 s Memory Limit: 512 MB Total points: 100

#988. Trả lại ánh sáng cho chiếc hộp

Statistics

Wesley cần tháo dỡ hệ thống đèn trang trí của mình. Anh ấy có một hàng gồm $N$ bóng đèn, một số bóng có thể đang bật, và Wesley cần tất cả các bóng đèn phải tắt trước khi anh ấy có thể rút phích cắm (nếu không anh ấy sẽ bị điện giật nguy hiểm).

Mỗi bóng đèn có một công tắc tương ứng có thể dùng để bật hoặc tắt đèn, và Wesley có thể sử dụng tối đa một trong các công tắc này mỗi giây, bắt đầu từ giây thứ nhất. Tuy nhiên, những bóng đèn này rất đỏng đảnh, và trong $M$ giây tiếp theo, chúng sẽ tự động thay đổi trạng thái! Cụ thể, vào cuối giây thứ $i$, bóng đèn thứ $b_i$ sẽ đảo ngược trạng thái: bật nếu nó đang tắt, hoặc tắt nếu nó đang bật. Wesley muốn tháo dỡ các bóng đèn càng sớm càng tốt, vì vậy anh ấy muốn biết thời gian sớm nhất có thể để tất cả các bóng đèn đều tắt, giả sử anh ấy sử dụng các công tắc một cách tối ưu. Cụ thể, hãy in ra giá trị $i$ nhỏ nhất sao cho tất cả các bóng đèn có thể được tắt vào cuối giây thứ $i$ bằng một chuỗi các thao tác công tắc. Lưu ý rằng nếu tất cả các bóng đèn ban đầu đều tắt, thì giá trị $i$ nhỏ nhất như vậy là 0.

Dữ liệu vào

Dòng đầu tiên chứa hai số nguyên $N$ và $M$, số lượng bóng đèn và số lần thay đổi tự động mà các bóng đèn sẽ thực hiện ($1 \le N, M \le 2 \cdot 10^5$).

Dòng thứ hai chứa $N$ số nguyên $a_1, a_2, \dots, a_N$ ($0 \le a_i \le 1$), trạng thái ban đầu của các bóng đèn. Ở đây, $a_i = 1$ cho biết bóng đèn thứ $i$ ban đầu đang bật, và $a_i = 0$ cho biết nó đang tắt.

Dòng thứ ba và cũng là dòng cuối cùng chứa $M$ số nguyên $b_1, b_2, \dots, b_M$, biểu thị rằng bóng đèn thứ $b_i$ sẽ đảo ngược trạng thái vào cuối giây thứ $i$ ($1 \le b_i \le N$).

Dữ liệu ra

In ra một số nguyên duy nhất, thời gian sớm nhất (tính bằng giây) để Wesley có thể tắt tất cả các bóng đèn. Lưu ý rằng nếu tất cả các bóng đèn có thể được tắt trước khi $M$ giây trôi qua, Wesley sẽ bỏ qua mọi thay đổi trạng thái trong tương lai và tháo dỡ chúng ngay lập tức.

Ví dụ

Dữ liệu vào 1

3 3
1 1 1
1 2 3

Dữ liệu ra 1

2

Dữ liệu vào 2

5 8
0 1 0 1 1
1 2 2 1 4 3 2 1

Dữ liệu ra 2

4

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.