题解:CF2075C Two Colors
洛谷CF2075C || CodeForces 2075 C
简要题意
对于一个长度
思路
对于方格中的断点 lower_bound 很容易找出满足
#include <bits/stdc++.h>
using namespace std;
int main()
{
int t;
cin >> t;
while (t--)
{
int n, m;
cin >> n >> m;
int a[200005];
for (int i = 0; i < m; ++i)
{
cin >> a[i];
}
sort(a, a+m);
long long ans = 0;
for (int k = 1; k < n; ++k)
{
long long x = m - (lower_bound(a, a+m, k) - a);
long long y = m - (lower_bound(a, a+m, n-k) - a);
ans += x * y - min(x, y);
}
cout << ans << endl;
}
return 0;
}