提交记录 22019
提交时间 |
评测时间 |
2024-07-29 19:49:51 |
2024-07-29 19:49:56 |
#include <vector>
#include <algorithm>
using namespace std;
constexpr unsigned mask(unsigned x) { return x | x >> 10; }
constexpr unsigned kN = 1e7;
unsigned d[kN];
unsigned f[mask(kN) + 1];
void add(unsigned n, unsigned x) {
for (++x; x < n; x += x & -x) {
++f[mask(x)];
}
}
unsigned sum(unsigned x) {
unsigned s = 0;
for (; x; x &= x - 1) {
s += f[mask(x)];
}
return s;
}
void count_2d(int n, const unsigned *x, const unsigned *y, unsigned *out) {
for (unsigned i = 0; i < n; ++i) {
d[i] = i;
}
sort(d, d + n, [x, y](int i, int j) {
return x[i] < x[j] || x[i] == x[j] && y[i] > y[j];
});
for (unsigned i = 0; i < n; ++i) {
out[d[i]] = sum(y[d[i]]);
add(n, y[d[i]]);
}
}
Compilation | N/A | N/A | Compile OK | Score: N/A | 显示更多 |
Testcase #1 | 3.381 s | 99 MB + 4 KB | Wrong Answer | Score: 0 | 显示更多 |
Judge Duck Online | 评测鸭在线
Server Time: 2025-07-15 14:37:32 | Loaded in 0 ms | Server Status
个人娱乐项目,仅供学习交流使用 | 捐赠