use std::io;
use std::collections::HashMap;
fn main() {
let mut input = String::new();
io::stdin().read_line(&mut input).unwrap();
let n: usize = input.trim().parse().unwrap();
let mut a = Vec::new();
let mut all = Vec::new();
for _ in 0..n {
input.clear();
io::stdin().read_line(&mut input).unwrap();
let parts: Vec<i32> = input
.split_whitespace()
.map(|x| x.parse().unwrap())
.collect();
let tower: Vec<i32> = parts[1..].to_vec();
a.push(tower.clone());
for &x in &tower {
all.push(x);
}
}
all.sort();
let mut pos = HashMap::new();
for (i, &x) in all.iter().enumerate() {
pos.insert(x, i);
}
let mut good = 0;
let mut total = 0;
for tower in &a {
total += tower.len();
for i in 0..tower.len() - 1 {
let p1 = pos[&tower[i]];
let p2 = pos[&tower[i + 1]];
if p2 == p1 + 1 {
good += 1;
}
}
}
let s = total - good - n;
let c = n + s - 1;
println!("{} {}", s, c);
}
dXNlIHN0ZDo6aW87CnVzZSBzdGQ6OmNvbGxlY3Rpb25zOjpIYXNoTWFwOwoKZm4gbWFpbigpIHsKICAgIGxldCBtdXQgaW5wdXQgPSBTdHJpbmc6Om5ldygpOwogICAgaW86OnN0ZGluKCkucmVhZF9saW5lKCZtdXQgaW5wdXQpLnVud3JhcCgpOwogICAgbGV0IG46IHVzaXplID0gaW5wdXQudHJpbSgpLnBhcnNlKCkudW53cmFwKCk7CiAgICAKICAgIGxldCBtdXQgYSA9IFZlYzo6bmV3KCk7CiAgICBsZXQgbXV0IGFsbCA9IFZlYzo6bmV3KCk7CiAgICAKICAgIGZvciBfIGluIDAuLm4gewogICAgICAgIGlucHV0LmNsZWFyKCk7CiAgICAgICAgaW86OnN0ZGluKCkucmVhZF9saW5lKCZtdXQgaW5wdXQpLnVud3JhcCgpOwogICAgICAgIGxldCBwYXJ0czogVmVjPGkzMj4gPSBpbnB1dAogICAgICAgICAgICAuc3BsaXRfd2hpdGVzcGFjZSgpCiAgICAgICAgICAgIC5tYXAofHh8IHgucGFyc2UoKS51bndyYXAoKSkKICAgICAgICAgICAgLmNvbGxlY3QoKTsKICAgICAgICAKICAgICAgICAKICAgICAgICBsZXQgdG93ZXI6IFZlYzxpMzI+ID0gcGFydHNbMS4uXS50b192ZWMoKTsKICAgICAgICBhLnB1c2godG93ZXIuY2xvbmUoKSk7CiAgICAgICAgCiAgICAgICAgZm9yICZ4IGluICZ0b3dlciB7CiAgICAgICAgICAgIGFsbC5wdXNoKHgpOwogICAgICAgIH0KICAgIH0KICAgIAogICAgYWxsLnNvcnQoKTsKICAgIGxldCBtdXQgcG9zID0gSGFzaE1hcDo6bmV3KCk7CiAgICBmb3IgKGksICZ4KSBpbiBhbGwuaXRlcigpLmVudW1lcmF0ZSgpIHsKICAgICAgICBwb3MuaW5zZXJ0KHgsIGkpOwogICAgfQogICAgCiAgICBsZXQgbXV0IGdvb2QgPSAwOwogICAgbGV0IG11dCB0b3RhbCA9IDA7CiAgICAKICAgIGZvciB0b3dlciBpbiAmYSB7CiAgICAgICAgdG90YWwgKz0gdG93ZXIubGVuKCk7CiAgICAgICAgCiAgICAgICAgZm9yIGkgaW4gMC4udG93ZXIubGVuKCkgLSAxIHsKICAgICAgICAgICAgbGV0IHAxID0gcG9zWyZ0b3dlcltpXV07CiAgICAgICAgICAgIGxldCBwMiA9IHBvc1smdG93ZXJbaSArIDFdXTsKICAgICAgICAgICAgCiAgICAgICAgICAgIGlmIHAyID09IHAxICsgMSB7CiAgICAgICAgICAgICAgICBnb29kICs9IDE7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CiAgICAKICAgIGxldCBzID0gdG90YWwgLSBnb29kIC0gbjsKICAgIGxldCBjID0gbiArIHMgLSAxOwogICAgCiAgICBwcmludGxuISgie30ge30iLCBzLCBjKTsKfQ==