提交记录 27569
提交时间 |
评测时间 |
2024-12-27 17:13:23 |
2024-12-27 17:13:24 |
unsigned solve(int n, char *s) {
unsigned int A[1000000] = {};
unsigned int p = 1000000;
A[500000] = 1;
int i = 0;
while (1) {
switch (s[i++]) {
case 0: goto end;
case '(': --p; break;
case ')': A[p++/2] = 0; break;
case '?':
unsigned* B = --p/2 + A;
int m = 266670 - i;
if (m>i) m=i;
m /= 2;
for (int j=0; j<m; j+=16) {
asm volatile(
"vmovupd 1(%0), %%ymm0; vmovupd 9(%0), %%ymm1;"
"vmovupd 0(%0), %%ymm2; vmovupd 8(%0), %%ymm3;"
"vpaddd %%ymm2, %%ymm0, %%ymm2; vmovupd %%ymm3, %%ymm1, %%ymm3;"
"vmovupd %%ymm2, 0(%0); vmovupd %%ymm3, 8(%0);"
: : "r"(B+j));
}
} } end:;
return A[p/2];
}
Compilation | N/A | N/A | Compile Error | Score: N/A | 显示更多 |
Judge Duck Online | 评测鸭在线
Server Time: 2025-04-19 22:53:01 | Loaded in 1 ms | Server Status
个人娱乐项目,仅供学习交流使用 | 捐赠