#P1901. 宾果游戏2(ABC355C-Bingo 2)
宾果游戏2(ABC355C-Bingo 2)
Description
有一个 N×N 的网格,其中第 i 行(从上往下)第 j 列(从左往右)的单元格包含整数 N×(i−1)+j。
在 T 个回合中,将会声明不同的整数。在第 i 个回合,整数 A~i~被声明,包含 A~i~ 的单元格被标记。确定第一次达成 Bingo 的回合数。如果在 T 个回合内没有达成 Bingo,请输出 -1。
这里,达成 Bingo 意味着满足以下条件之一:
· 存在一行中所有 N 个单元格都被标记。 · 存在一列中所有 N 个单元格都被标记。 · 存在一条对角线(从左上到右下或从右上到左下)中所有 N 个单元格都被标记。
Input Format
输入从标准输入中以下列格式给出: N T A~1~ A~2~ … A~T~
Output Format
如果在 T 个回合内达成 Bingo,输出第一次达成 Bingo 的回合数;否则,输出 -1。
3 5
5 1 8 9 7
4
3 5
4 2 9 7 5
-1
4 12
13 9 6 5 2 7 16 14 8 3 10 11
9
Hint
数据范围与提示
【样例1说明】
网格状态变化如下。在第 4 个回合首次达成 Bingo。

【样例2说明】 在五个回合内没有达成 Bingo,所以输出 -1。
【数据范围】 2≤N≤2×10^3^ 1≤T≤min(N^2^,2×10^5^) 1≤A~i~≤N^2^。 如果 i≠j 则 A~i~≠A~j~。所有输入值都是整数。