Submission #39999094


Source Code Expand

#include <bits/stdc++.h>
using namespace std;

int main()
{
  int N;
  cin >> N;
  assert(N <= 50);
  string S;
  cin >> S;

  // i が勝つなら -1, j が勝つなら 1, 引き分けなら 0
  auto comp = [&](int i, int j) -> int
  {
    if (S.at(i) == S.at(j))
      return 0;
    if (S.at(i) == 'R' && S.at(j) == 'S')
      return -1;
    if (S.at(i) == 'S' && S.at(j) == 'P')
      return -1;
    if (S.at(i) == 'P' && S.at(j) == 'R')
      return -1;
    return 1;
  };

  vector dp(N + 1, vector(N + 1, vector(N, false)));
  for (int i = 0; i < N; i++)
  {
    dp.at(i).at(i + 1).at(i) = true;
  }
  for (int len = 2; len <= N; len++)
  {
    for (int l = 0; l < N; l++)
    {
      int r = l + len;
      if (r > N)
        break;
      for (int i = 0; i < N; i++)
      {
        for (int m = l + 1; m < r; m++)
        {
          for (int j = 0; j < N; j++)
          {
            if (comp(i, j) != -1)
              continue;

            if (dp.at(l).at(m).at(i) && dp.at(m).at(r).at(j))
              dp.at(l).at(r).at(i) = true;
            if (dp.at(l).at(m).at(j) && dp.at(m).at(r).at(i))
              dp.at(l).at(r).at(i) = true;
          }
        }
      }
    }
  }
  
  int ans = 0;
  for (int i = 0; i < N; i++)
  {
    if (dp.at(0).at(N).at(i))
      ans++;
  }
  cout << ans << endl;
}

Submission Info

Submission Time
Task L - Small RPS Tournament
User miscalculation53
Language C++ (GCC 9.2.1)
Score 10
Code Size 1377 Byte
Status RE
Exec Time 152 ms
Memory 3788 KiB

Judge Result

Set Name Sample Subtask1 Subtask2 All
Score / Max Score 0 / 0 10 / 10 0 / 40 0 / 50
Status
AC × 3
AC × 21
AC × 21
RE × 16
AC × 21
RE × 53
Set Name Test Cases
Sample 00_sample_00, 00_sample_01, 00_sample_02
Subtask1 00_sample_00, 00_sample_01, 00_sample_02, 01_min_00, 01_min_01, 01_min_02, 01_min_03, 01_min_04, 02_small_00, 02_small_01, 02_small_02, 02_small_03, 02_small_04, 03_small_max_00, 03_small_max_01, 03_small_max_02, 04_small_1type_00, 05_small_2types_00, 05_small_2types_01, 05_small_2types_02, 05_small_2types_03
Subtask2 00_sample_00, 00_sample_01, 00_sample_02, 01_min_00, 01_min_01, 01_min_02, 01_min_03, 01_min_04, 02_small_00, 02_small_01, 02_small_02, 02_small_03, 02_small_04, 03_small_max_00, 03_small_max_01, 03_small_max_02, 04_small_1type_00, 05_small_2types_00, 05_small_2types_01, 05_small_2types_02, 05_small_2types_03, 12_medium_00, 12_medium_01, 12_medium_02, 12_medium_03, 12_medium_04, 13_medium_max_00, 13_medium_max_01, 13_medium_max_02, 14_medium_1type_00, 14_medium_1type_01, 15_medium_2types_00, 15_medium_2types_01, 15_medium_2types_02, 15_medium_2types_03, 15_medium_2types_04, 15_medium_2types_05
All 00_sample_00, 00_sample_01, 00_sample_02, 01_min_00, 01_min_01, 01_min_02, 01_min_03, 01_min_04, 02_small_00, 02_small_01, 02_small_02, 02_small_03, 02_small_04, 03_small_max_00, 03_small_max_01, 03_small_max_02, 04_small_1type_00, 05_small_2types_00, 05_small_2types_01, 05_small_2types_02, 05_small_2types_03, 12_medium_00, 12_medium_01, 12_medium_02, 12_medium_03, 12_medium_04, 13_medium_max_00, 13_medium_max_01, 13_medium_max_02, 14_medium_1type_00, 14_medium_1type_01, 15_medium_2types_00, 15_medium_2types_01, 15_medium_2types_02, 15_medium_2types_03, 15_medium_2types_04, 15_medium_2types_05, 22_large_00, 22_large_01, 22_large_02, 22_large_03, 22_large_04, 23_large_max_00, 23_large_max_01, 23_large_max_02, 23_large_max_03, 23_large_max_04, 23_large_max_05, 23_large_max_06, 23_large_max_07, 23_large_max_08, 23_large_max_09, 24_large_1type_00, 24_large_1type_01, 24_large_1type_02, 24_large_1type_03, 24_large_1type_04, 24_large_1type_05, 25_large_2types_00, 25_large_2types_01, 25_large_2types_02, 25_large_2types_03, 25_large_2types_04, 25_large_2types_05, 25_large_2types_06, 25_large_2types_07, 25_large_2types_08, 25_large_2types_09, 25_large_2types_10, 25_large_2types_11, 25_large_2types_12, 25_large_2types_13, 25_large_2types_14, 25_large_2types_15
Case Name Status Exec Time Memory
00_sample_00 AC 8 ms 3480 KiB
00_sample_01 AC 2 ms 3588 KiB
00_sample_02 AC 2 ms 3396 KiB
01_min_00 AC 2 ms 3468 KiB
01_min_01 AC 2 ms 3472 KiB
01_min_02 AC 2 ms 3480 KiB
01_min_03 AC 5 ms 3528 KiB
01_min_04 AC 2 ms 3392 KiB
02_small_00 AC 2 ms 3468 KiB
02_small_01 AC 6 ms 3556 KiB
02_small_02 AC 9 ms 3508 KiB
02_small_03 AC 10 ms 3612 KiB
02_small_04 AC 30 ms 3704 KiB
03_small_max_00 AC 152 ms 3720 KiB
03_small_max_01 AC 117 ms 3660 KiB
03_small_max_02 AC 75 ms 3748 KiB
04_small_1type_00 AC 72 ms 3644 KiB
05_small_2types_00 AC 119 ms 3664 KiB
05_small_2types_01 AC 112 ms 3788 KiB
05_small_2types_02 AC 79 ms 3644 KiB
05_small_2types_03 AC 77 ms 3768 KiB
12_medium_00 RE 104 ms 3272 KiB
12_medium_01 RE 102 ms 3340 KiB
12_medium_02 RE 104 ms 3516 KiB
12_medium_03 RE 105 ms 3456 KiB
12_medium_04 RE 104 ms 3432 KiB
13_medium_max_00 RE 104 ms 3452 KiB
13_medium_max_01 RE 103 ms 3452 KiB
13_medium_max_02 RE 103 ms 3532 KiB
14_medium_1type_00 RE 103 ms 3320 KiB
14_medium_1type_01 RE 104 ms 3328 KiB
15_medium_2types_00 RE 104 ms 3428 KiB
15_medium_2types_01 RE 108 ms 3344 KiB
15_medium_2types_02 RE 104 ms 3364 KiB
15_medium_2types_03 RE 104 ms 3364 KiB
15_medium_2types_04 RE 104 ms 3468 KiB
15_medium_2types_05 RE 105 ms 3272 KiB
22_large_00 RE 104 ms 3268 KiB
22_large_01 RE 103 ms 3360 KiB
22_large_02 RE 103 ms 3528 KiB
22_large_03 RE 105 ms 3520 KiB
22_large_04 RE 104 ms 3324 KiB
23_large_max_00 RE 103 ms 3528 KiB
23_large_max_01 RE 104 ms 3356 KiB
23_large_max_02 RE 104 ms 3468 KiB
23_large_max_03 RE 106 ms 3420 KiB
23_large_max_04 RE 108 ms 3364 KiB
23_large_max_05 RE 106 ms 3332 KiB
23_large_max_06 RE 107 ms 3308 KiB
23_large_max_07 RE 106 ms 3524 KiB
23_large_max_08 RE 105 ms 3428 KiB
23_large_max_09 RE 106 ms 3400 KiB
24_large_1type_00 RE 105 ms 3404 KiB
24_large_1type_01 RE 107 ms 3524 KiB
24_large_1type_02 RE 107 ms 3276 KiB
24_large_1type_03 RE 109 ms 3360 KiB
24_large_1type_04 RE 108 ms 3372 KiB
24_large_1type_05 RE 112 ms 3452 KiB
25_large_2types_00 RE 108 ms 3312 KiB
25_large_2types_01 RE 109 ms 3324 KiB
25_large_2types_02 RE 105 ms 3460 KiB
25_large_2types_03 RE 107 ms 3464 KiB
25_large_2types_04 RE 105 ms 3456 KiB
25_large_2types_05 RE 105 ms 3324 KiB
25_large_2types_06 RE 106 ms 3484 KiB
25_large_2types_07 RE 105 ms 3408 KiB
25_large_2types_08 RE 105 ms 3432 KiB
25_large_2types_09 RE 105 ms 3332 KiB
25_large_2types_10 RE 105 ms 3364 KiB
25_large_2types_11 RE 104 ms 3520 KiB
25_large_2types_12 RE 105 ms 3388 KiB
25_large_2types_13 RE 104 ms 3372 KiB
25_large_2types_14 RE 106 ms 3324 KiB
25_large_2types_15 RE 110 ms 3308 KiB