Problem:
Score : 400 points

Problem Statement

We have a string S of length N consisting of R, G, and B.

Find the number of triples (i,~j,~k)~(1 \leq i < j < k \leq N) that satisfy both of the following conditions:

S_i \neq S_j, S_i \neq S_k, and S_j \neq S_k.

j - i \neq k - j.

Constraints

1 \leq N \leq 4000

S is a string of length N consisting of R, G, and B.

Input

Input is given from Standard Input in the following format:

N
S

Output

Print the number of triplets in question.

Sample Input 1

4
RRGB

Sample Output 1

1

Only the triplet (1,~3,~4) satisfies both conditions. The triplet (2,~3,~4) satisfies the first condition but not the second, so it does not count.

Sample Input 2

39
RBRBGRBGGBBRRGBBRRRBGGBRBGBRBGBRBBBGBBB

Sample Output 2

1800

Solution in PHP (7.4.4) (judge verdict: Wrong Answer)

<?php
  $n = trim(fgets(STDIN));
  $s = trim(fgets(STDIN));
  for($i=0; $i<$n; $i++){
      $cnt[$s[$i]][] = $i+1;
  }
//   print_r($cnt);
  $r = $cnt["R"];
  $g = $cnt["G"];
  $b = $cnt["B"];
  $lenr = count($r);
  $leng = count($g);
  $lenb = count($b);
  $ans = 0;
  for($k=0; $k<$lenb; $k++){
      for($j=0; $j<$leng; $j++){
          if($g[$j] > $b[$k]) break;
          for($i=0; $i<$lenr; $i++){
              if($r[$i] > $g[$j]) break;
              if($g[$j]-$r[$i]!= $b[$k]-$g[$j]) $ans++;
          }
      }
  }
  echo $ans;