mixperm

Time limit: 0.25s Memory limit: 64MB Input: mixperm.in Output: mixperm.out

Se consideră două șiruri de numere naturale, ambele de lungime nn, aa = (a1a_1, a2a_2, \dots, ana_n și bb = (b1b_1, b2b_2, \dots, bnb_n). Se știe că elementele din cele două șiruri sunt numere naturale, nu neapărat distincte, din mulțimea {11, 22, \dots, nn}. Cu cele două șiruri se poate face următoarea operație: se aleg doi indici ii și jj, cu 1ijn1 \leq i \leq j \leq n , apoi prin interschimbarea secvențelor aia_i, ai+1a_{i+1}, \dots, aja_j cu bib_i, bi+1b_{i+1}, \dots, bjb_j se obțin șirurile: a1a_1, a2a_2, \dots, ai1a_{i-1}, bib_i ,bi+1b_{i+1}, \dots, bjb_j, aj+1a_{j+1}, aj+2a_{j+2}, \dots, ana_n și b1b_1, b2b_2, \dots, bi1b_{i-1}, aia_i ,ai+1a_{i+1}, \dots, aja_j, bj+1b_{j+1}, bj+2b_{j+2}, \dots, bnb_n

Dacă măcar unul din șirurile obținute este permutare a mulțimii {11, 22, \dots, nn}, atunci spunem că s-a obținut un mixperm.

Cerinţa

Să se determine în câte moduri se poate obține un mixperm.

Date de intrare

Fişierul mixperm.in conţine pe prima linie numărul natural nn, pe linia a doua, separate prin câte un spațiu, numerele a1a_1, a2a_2, \dots, ana_n, iar pe linia a treia, separate prin câte un spațiu, numerele b1b_1, b2b_2, \dots, bnb_n.

Date de ieșire

Fişierul mixperm.out conţine un singur număr natural reprezentând numărul de posibilități de a se obține un mixperm.

Restricții și precizări

  • 1n10 0001 \leq n \leq 10 \ 000;

Exemplul 1

mixperm.in

6
3 2 1 4 4 5
2 3 3 4 6 5

mixperm.out

8

Explicație

Se pot interschimba secvențele care au ca poziții de început și sfârșit (1,3)(1, 3), (1,4)(1, 4), (3,3)(3, 3), (3,4)(3, 4), (4,6)(4, 6), (5,6)(5, 6), (4,5)(4, 5), (5,5)(5, 5).

Exemplul 2

mixperm.in

2
1 2
1 2

mixperm.out

3

Explicație

Se pot interschimba secvențele care au ca poziții de început și sfârșit (1,1)(1, 1), (2,2)(2, 2) și (1,2)(1, 2).

Log in or sign up to be able to send submissions!