提交记录 13750
提交时间 |
评测时间 |
2020-08-06 12:41:27 |
2020-08-06 12:41:34 |
#include <bits/stdc++.h>
using namespace std;
unsigned solve(int n, char *s) {
int nsz = 1;
unsigned dp[66668] = {1};
for (int i = 0; i < n; ++i) {
int sz = min(i + 1, n - i - 1) / 2 + 1;
if (s[i] == '(') {
if (i & 1) {
memcpy(dp + 1, dp, (sz - 1) * 4);
dp[0] = 0;
}
} else if (s[i] == ')') {
if (~i & 1) {
memcpy(dp, dp + 1, sz * 4);
dp[sz] = 0;
}
} else {
if (i & 1) {
memcpy(dp + 1, dp, sz * 4);
dp[0] = 0;
int i;
for (i = 0; i + 1 < nsz; i += 2) {
dp[i] += dp[i + 1];
dp[i + 1] += dp[i + 2];
}
for (; i < nsz; ++i) {
dp[i] += dp[i + 1];
}
dp[sz] = 0;
} else {
int i;
for (i = 0; i + 1 < sz; i += 2) {
dp[i] += dp[i + 1];
dp[i + 1] += dp[i + 2];
}
for (; i < sz; ++i) {
dp[i] += dp[i + 1];
}
dp[sz] = 0;
}
}
nsz = sz;
}
return dp[0];
}
Compilation | N/A | N/A | Compile OK | Score: N/A | 显示更多 |
Testcase #1 | 193.65 us | 288 KB | Wrong Answer | Score: 0 | 显示更多 |
Testcase #2 | 1.664 s | 404 KB | Wrong Answer | Score: 0 | 显示更多 |
Testcase #3 | 3 s | 504 KB | Time Limit Exceeded | Score: 0 | 显示更多 |
Testcase #4 | 3 s | 544 KB | Time Limit Exceeded | Score: 0 | 显示更多 |
Judge Duck Online | 评测鸭在线
Server Time: 2024-04-24 04:12:21 | Loaded in 1 ms | Server Status
个人娱乐项目,仅供学习交流使用