提交记录 13731


用户 题目 状态 得分 用时 内存 语言 代码长度
15iq wc2017b3. 【WC2017】挑战-任务3 Time Limit Exceeded 50 3 s 1028 KB C++11 1.14 KB
提交时间 评测时间
2020-08-06 10:41:45 2020-08-06 10:41:53
#include <bits/stdc++.h>

using namespace std;

void add_n(const unsigned *a, int n, unsigned *b) {
  int i = 0;
  for (; i < n - 7; i += 8) {
    *b++ += *a++;
    *b++ += *a++;
    *b++ += *a++;
    *b++ += *a++;
    *b++ += *a++;
    *b++ += *a++;
    *b++ += *a++;
    *b++ += *a++;
  }
  for (; i < n; ++i) {
    *b++ += *a++;
  }
}

unsigned solve(int n, char *s) {
  int nsz = 1;
  unsigned *dp = new unsigned[n / 2 + 1]();
  unsigned *pd = new unsigned[n / 2 + 1];
  dp[0] = 1;
  for (int i = 0; i < n; ++i) {
    int sz = min(i + 1, n - i - 1) / 2 + 1;
    if (s[i] == '(') {
      if (i & 1) {
        move_backward(dp, dp + sz - 1, dp + sz);
        dp[0] = 0;
      }
    } else if (s[i] == ')') {
      if (~i & 1) {
        move(dp + 1, dp + 1 + sz, dp);
      }
    } else {
      if (i & 1) {
        move_backward(dp, dp + sz, dp + sz + 1);
        dp[0] = 0;
        for (int i = 0; i < nsz; ++i) {
          dp[i] += dp[i + 1];
        }
        dp[sz] = 0;
      } else {
        copy_n(dp, sz, pd);
        for (int i = 0; i < sz; ++i) {
          dp[i] += dp[i + 1];
        }
        dp[sz] = 0;
      }
    }
    nsz = sz;
  }
  return dp[0];
}

CompilationN/AN/ACompile OKScore: N/A

Testcase #1194.73 us32 KBAcceptedScore: 25

Testcase #21.743 s500 KBAcceptedScore: 25

Testcase #33 s904 KBTime Limit ExceededScore: 0

Testcase #43 s1 MB + 4 KBTime Limit ExceededScore: 0


Judge Duck Online | 评测鸭在线
Server Time: 2026-03-23 20:38:22 | Loaded in 1 ms | Server Status
个人娱乐项目,仅供学习交流使用 | 捐赠