필독서

시간 제한1초메모리 제한128 MB

요약
책을 하나씩 꺼내 읽고 맨 위에 다시 쌓을 때, 매번 들어 올린 책의 수를 모두 더한 값을 구한다.
난이도

보통10점 중 5점

유형
배열, 정렬, 누적 합, 시뮬레이션
정답자
아직 제출이 없습니다

문제

미르코는 모범생이지만 필독서를 읽는 일만큼은 늘 힘들어했다. 올해는 이 문제를 끝내기로 마음먹었다. 선생님이 필독서로 고를 수 있는 책 NN권을 모두 구했고, 책에는 11부터 NN까지 번호가 붙어 있다. 미르코는 이 책을 번호가 작은 것부터 큰 것 순서로 한 탑에 쌓았다. 즉 11번 책이 탑의 맨 위에 있다.

선생님이 LiL_i번 책을 필독서로 지정할 때마다 미르코는 그 책을 탑에서 꺼내 읽는다. LiL_i번 책 위에 있는 책을 모두 들어 올리고, LiL_i번 책을 빼낸 뒤, 들고 있던 책을 다시 탑에 내려놓는 방식이다. 다 읽은 LiL_i번 책은 탑의 맨 위에 올려놓는다. LiL_i번 책도 들어 올린 책으로 센다.


미르코가 33번 필독서를 읽는 모습

예를 들어 그림의 탑에서 첫 번째 필독서가 33번 책이면 미르코는 11번, 22번, 33번 책 세 권을 들어 올린다. 그다음 11번과 22번 책을 내려놓는다. 33번 책을 다 읽으면 그 책을 탑의 맨 위에 올려놓는다.

선생님이 지정할 필독서의 순서 LL이 주어진다. 미르코가 올해 필독서를 모두 읽는 동안 들어 올리는 책이 모두 몇 권인지 구하시오.

입력

첫째 줄에 책의 수 NN과 필독서의 수 QQ가 주어진다. (1≤N,Q≤1000001 \le N, Q \le 100000)

둘째 줄에 지정된 필독서의 번호 L1,L2,…,LQL_1, L_2, \ldots, L_Q가 순서대로 주어진다. (1≤Li≤N1 \le L_i \le N)

한 번도 필독서로 지정되지 않는 책이 있을 수 있다. 같은 책이 여러 번 지정될 수도 있으며, 이때 미르코는 그 책을 다시 읽어야 한다.

출력

첫째 줄에 미르코가 들어 올리는 책의 총 권수를 출력한다.

힌트

책이 44권이고 필독서가 11, 33, 22 순서로 지정되는 경우를 보자. 탑을 위에서부터 적으면 다음과 같이 바뀐다.

  • (1,2,3,4)→(1,2,3,4)(1, 2, 3, 4) \to (1, 2, 3, 4): 11번 책 한 권만 들어 올린다.
  • (1,2,3,4)→(3,1,2,4)(1, 2, 3, 4) \to (3, 1, 2, 4): 11번, 22번, 33번 책을 들어 올린다.
  • (3,1,2,4)→(2,3,1,4)(3, 1, 2, 4) \to (2, 3, 1, 4): 11번, 22번, 33번 책을 들어 올린다.

미르코가 들어 올리는 책은 모두 1+3+3=71 + 3 + 3 = 7권이다.

예제3

  1. 예제 1

    입력
    4 3
    1 3 2
    
    예상 출력
    7
    
  2. 예제 2

    입력
    2 8
    2 1 2 1 2 2 2 1
    
    예상 출력
    14
    
  3. 예제 3

    입력
    10 3
    10 10 10
    
    예상 출력
    12