순열의 개수

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

요약
0 이상 N 이하인 i, j에 대해 순열 A의 앞 i개와 순열 B의 앞 j개를 이어 붙인 수열이 길이 i+j인 순열이 되는 쌍의 개수를 구한다.
난이도

어려움10점 중 8점

유형
누적 합, 조합론, 해시맵, 수학
정답자
아직 제출이 없습니다

문제

동현이와 정후는 밤하늘을 보고 있다.

  • 동현: 정후야, 저 밤하늘을 봐. 오리온자리야! 마치 길이가 NN인 두 순열이 교차하는 것 같지 않니?
  • 정후: 뭐라고?
  • 동현: 길이가 NN인 두 순열 A_1,A_2,⋯ ,A_NA\_1, A\_2, \cdots, A\_N와 B_1,B_2,⋯ ,B_NB\_1, B\_2, \cdots, B\_N을 생각해 보자. 수열 AA에서 제일 앞 ii개의 수를 고르고, BB에서 제일 앞 jj개의 수를 골라 일렬로 나열했을 때 길이 i+ji+j의 순열이 되는 경우는 몇 가지일까? i,ji, j의 범위는 00 이상 NN 이하야.
  • 정후: 간단하지! 그건...

...이라고 대답해 버렸다. 정후를 도와 동현이의 퀴즈를 풀어 주자. 단, 길이 MM의 순열이란 00 이상 MM 미만의 수가 정확히 한 번씩 등장하는 수열이다. 길이 00의 수열도 순열이다.

입력

첫 번째 줄에 수열의 길이 NN이 주어진다. 두 번째 줄에 수열 AA, 세 번째 줄에 수열 BB가 주어진다. 0≤A_i,B_i<N0\leq A\_i, B\_i < N 이며, i≠ji\neq j일 때, A_i≠A_j,B_i≠B_jA\_i\neq A\_j, B\_i\neq B\_j 이다.

출력

동현이의 퀴즈에 대한 답을 출력한다.

제한

  • 1≤N≤5×1051\leq N\leq 5\times10^5
  • 주어지는 모든 수는 정수이다.

예제2

  1. 예제 1

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

    입력
    8
    0 4 2 3 7 5 1 6
    1 3 4 2 5 0 6 7
    
    예상 출력
    11