Rust solution
\nimpl Solution {\n    pub fn intersection(nums: Vec<Vec<i32>>) -> Vec<i32> {\n        let l = nums.len();\n        let mut counter = [0; 1001];\n        nums.i
```\nimpl Solution {\n    pub fn intersection(nums: Vec<Vec<i32>>) -> Vec<i32> {\n        let l = nums.len();\n        let mut counter = [0; 1001];\n        nums.iter()\n            .flat_map(|v| v.iter())\n            .for_each(|v| counter[*v as usize] += 1);\n\n        counter\n            .iter()\n            .zip(0..)\n            .filter_map(|(&num, idx)| if num == l { Some(idx) } else { None })\n            .collect()\n    }\n}\n```
['Rust']