AT_abc355_c 题解
思路
首先 是第 行第 列的(此处均为 开始),然后每次添加点肯定不用整个都判断,只需要判断更改的部分即可。
代码
# include <bits/stdc++.h>
# define done {cout << i; return 0;}
using namespace std;
int n, t, x, y, sh[3005], sl[3005], s1, s2;
int main () {
ios::sync_with_stdio (0);
cin.tie (0);
cout.tie (0);
cin >> n >> t;
for (int i = 1; i <= t; ++ i) {
cin >> x;
-- x, y = x % n, x /= n;
if (++ sh[x] >= n)
done;
if (++ sl[y] >= n)
done;
if (x == y && ++ s1 >= n)
done;
if (x == n - y - 1 && ++ s2 >= n)
done;
}
cout << "-1";
return 0;
}

浙公网安备 33010602011771号