提交记录 22041
提交时间 |
评测时间 |
2024-07-29 21:51:13 |
2024-07-29 21:51:19 |
#pragma GCC optimize("Ofast")
#include <bits/stdc++.h>
using u32 = unsigned int;
using u64 = unsigned long long;
constexpr size_t MAXN = 266670;
static u32 f_val[MAXN], *f = f_val + (MAXN >> 1), *p0, *p1, *p2, *p3, *lim;
#define upv(p) (*p = *(p - 1) + *(p + 1), p += 16)
u32 solve(int n, char * s) {
if (n & 1)
return 0;
*f = 1;
for (int i = 0; i < n; f[-1] = 0, i++) {
if (s[i] == '(')
f--;
else if (s[i] == ')')
f++;
else {
lim = f + std::min(i + 1, n - i - 1);
p0 = f + ((i & 1) ^ 1), p1 = p0 + 2, p2 = p1 + 2, p3 = p2 + 2;
while (p3 <= lim) {
upv(p0), upv(p1), upv(p2), upv(p3);
}
while (p0 <= lim) {
*p0 = *(p0 - 1) + *(p0 + 1);
p0 += 2;
}
}
}
return *f;
}
Compilation | N/A | N/A | Compile OK | Score: N/A | 显示更多 |
Testcase #1 | 72.39 us | 40 KB | Wrong Answer | Score: 0 | 显示更多 |
Testcase #2 | 315.682 ms | 392 KB | Wrong Answer | Score: 0 | 显示更多 |
Testcase #3 | 1.246 s | 700 KB | Wrong Answer | Score: 0 | 显示更多 |
Testcase #4 | 1.813 s | 816 KB | Wrong Answer | Score: 0 | 显示更多 |
Judge Duck Online | 评测鸭在线
Server Time: 2025-07-15 16:22:46 | Loaded in 0 ms | Server Status
个人娱乐项目,仅供学习交流使用 | 捐赠