만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

Rikka와 새해 파티

시간 제한5초메모리 제한512 MB

난이도

아직 분류되지 않았습니다

정답자
아직 제출이 없습니다

문제

Rikka는 알고리즘 협회의 새해 파티를 준비하고 있다. 그녀는 소문자로 표시되는 26개의 서로 다른 그룹에서 nn명의 배우를 초대했다. Rikka는 그중 일부를 골라 개막 공연에 세우려고 한다.

이제 nn명의 배우가 한 줄로 서 있다. ii번째 배우는 sis_i번째 그룹 소속이다. Rikka는 공백이 아닌 구간 [l,r][l,r] (1≤l≤r≤n1 \leq l \leq r \leq n)을 고르고, 이 구간의 배우 모두를 개막 공연에 참여시킨다.

공연은 다음 순서로 진행된다.

  • 배우들은 순서대로 연기한다. ll번째 배우가 가장 먼저, rr번째 배우가 가장 마지막에 연기한다.
  • ii번째 배우는 차례가 되면 다음과 같이 행동을 정한다. 먼저 연기한 배우 jj 중 같은 그룹 sis_i 소속이 있으면, 그 배우 jj와 같은 행동을 한다. 없으면 지금까지 아무도 고르지 않은 행동 중 번호가 가장 작은 행동을 고른다.

예를 들어 그룹이 abacb인 5명의 배우는 차례로 행동 1,2,1,3,21,2,1,3,2를 고른다.

Rikka는 서로 다른 구간이 같은 공연을 만들 수 있다는 것을 알아냈다. 예를 들어 그룹이 abacbc인 6명의 배우에서 구간 [1,3][1,3]과 [4,6][4,6]은 같은 공연을 만든다.

두 공연은 행동의 개수가 다르거나, 어떤 번호 ii에서 ii번째 행동이 다르면 서로 다른 공연이다. 공연은 ss의 어떤 구간 [l,r][l,r]이 만들어 낼 수 있을 때 가능하다. ss가 주어졌을 때, 가능한 서로 다른 공연의 수를 구하라.

입력

첫째 줄에 배우의 수 nn (1≤n≤1051 \leq n \leq 10^5)이 주어진다.

둘째 줄에 길이가 nn인 소문자 문자열 ss가 주어진다. sis_i는 ii번째 배우의 그룹이다.

출력

가능한 서로 다른 공연의 수를 한 줄에 정수 하나로 출력한다.

힌트

첫 번째 예제에서 가능한 서로 다른 공연은 7가지이다.

  1. 행동 11. 구간 [1,1][1,1], [2,2][2,2], [3,3][3,3], [4,4][4,4], [5,5][5,5]에 해당한다.
  2. 행동 1,21,2. 구간 [1,2][1,2], [2,3][2,3], [3,4][3,4], [4,5][4,5]에 해당한다.
  3. 행동 1,2,11,2,1. 구간 [1,3][1,3], [2,4][2,4]에 해당한다.
  4. 행동 1,2,31,2,3. 구간 [3,5][3,5]에 해당한다.
  5. 행동 1,2,1,21,2,1,2. 구간 [1,4][1,4]에 해당한다.
  6. 행동 1,2,1,31,2,1,3. 구간 [2,5][2,5]에 해당한다.
  7. 행동 1,2,1,2,31,2,1,2,3. 구간 [1,5][1,5]에 해당한다.

예제3

  1. 예제 1

    입력
    5
    ababc
    
    예상 출력
    7
    
  2. 예제 2

    입력
    6
    abacbc
    
    예상 출력
    10
    
  3. 예제 3

    입력
    11
    ababcdcefef
    
    예상 출력
    33