În Sosmania sunt N
fabrici de sos, numerotate de la 1
la N
. Aceste fabrici folosesc pentru prepararea sosului o mulțime proprie de ingrediente. La nivel național, sunt acceptate M
tipuri de ingrediente, numerotate de la 1
la M
. Se consideră că o secvență formată din două sau mai multe fabrici este compatibilă, dacă toate fabricile din secvență folosesc cel puțin un ingredient comun. O secvență de fabrici (i, j)
(1 ≤ i < j ≤ n
) este formată din toate fabricile care au numărul de ordine x
astfel încât i ≤ x ≤ j
. De exemplu, să considerăm fabricile 1
, 2
, 3
și 4
care folosesc următoarele ingrediente:
1
. :1, 2, 5, 3, 8
;2
. :4, 2, 6
;3
. :2, 4, 5, 8, 10
;4
. :10
(1, 3)
este o secvență compatibilă deoarece toate fabricile din secvență folosesc ingredientul 2, dar secvența (1, 4)
nu este compatibilă, deoarece nu există niciun ingredient care să fie utilizat de toate cele 4
fabrici.
Cerința
Cunoscându-se N
, M
și mulțimea ingredientelor folosite de fiecare dintre cele N
fabrici, să se determine numărul de subsecvențe compatibile.
Date de intrare
Fișierul de intrare sos.in
conține pe prima linie numerele naturale N
și M
. Pe următoarele N
linii sunt descrise mulțimile de ingrediente folosite de cele N
fabrici, câte o mulțime pe o linie, în forma următoare:
- primul număr de pe linie este
lg
și reprezintă numărul de ingrediente folosite de fabrică; - următoarele
lg
numere reprezintă ingredientele folosite, în ordine strict crescătoare.
Numerele scrise pe aceeași linie sunt separate prin câte un spațiu.
Date de ieșire
Fișierul de ieșire sos.out
va conține o singură linie pe care va fi scris numărul de subsecvențe compatibile.
Restricții și precizări
1 ≤ N ≤ 70.000
1 ≤ M ≤ 1.000.000
1 ≤ lg ≤ 20
- Pentru 30 de puncte,
1 ≤ N ≤ 100
- Pentru 30 de puncte,
100 < N ≤ 1000
- Pentru 40 de puncte,
1000 < N ≤ 70.000
Exemplu:
sos.in
4 15 3 2 5 12 6 1 2 5 7 10 13 2 2 4 7 1 3 4 6 11 14 15
sos.out
4
Explicație
Există 4
subsecvențe care respectă proprietatea cerută: (1, 2)
, (1, 3)
, (2, 3)
, (3, 4)
.