28 lines
746 B
Text
28 lines
746 B
Text
use std::env;
|
|
fn main() {
|
|
let mut args = env::args().skip(1).flat_map(|num| num.parse());
|
|
let rows = args.next().expect("Expected number of rows as first argument");
|
|
let cols = args.next().expect("Expected number of columns as second argument");
|
|
|
|
assert!(rows != 0 && cols != 0);
|
|
|
|
// Creates a vector of vectors with all elements initialized to 0.
|
|
let mut v = init_vec(rows, || init_vec(cols, || 0));
|
|
v[0][0] = 1;
|
|
println!("{}", v[0][0]);
|
|
|
|
|
|
}
|
|
|
|
// Returns a dynamically-allocated array of size `n`,
|
|
// initialized with the values computed by `f`
|
|
|
|
fn init_vec<F,T>(n: usize, f: F) -> Vec<T>
|
|
where F: Fn() -> T
|
|
{
|
|
let mut vec = Vec::with_capacity(n);
|
|
for _ in 0..n {
|
|
vec.push(f());
|
|
}
|
|
vec
|
|
}
|