(grid: Vec<Vec<i32>>, k: i32)
| 1 | pub fn shift_grid(grid: Vec<Vec<i32>>, k: i32) -> Vec<Vec<i32>> { |
| 2 | let grid_len = grid[0].len(); |
| 3 | let mut a = grid.into_iter().flatten().collect::<Vec<i32>>(); |
| 4 | let a_len = a.len(); |
| 5 | a.rotate_right(k as usize % a_len); |
| 6 | a.chunks(grid_len).into_iter().map(|e|e.to_vec()).collect() |
| 7 | } |
| 8 | |
| 9 | fn main() { |
| 10 | let grid = vec![vec![3,8,1,9],vec![19,7,2,5],vec![4,6,11,10],vec![12,0,21,13]]; |
nothing calls this directly
no outgoing calls
no test coverage detected