feat(rust): add are the same kata
This commit is contained in:
parent
9c56b92632
commit
0c2f6e04a5
1 changed files with 51 additions and 0 deletions
51
rust/tests/3_are_they_same.rs
Normal file
51
rust/tests/3_are_they_same.rs
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
fn comp(a: Vec<i64>, b: Vec<i64>) -> bool {
|
||||||
|
let mut a = a.into_iter().map(|x| x * x).collect::<Vec<_>>();
|
||||||
|
let mut b = b;
|
||||||
|
a.sort();
|
||||||
|
b.sort();
|
||||||
|
a == b
|
||||||
|
}
|
||||||
|
|
||||||
|
fn testing(a: Vec<i64>, b: Vec<i64>, exp: bool) -> () {
|
||||||
|
assert_eq!(comp(a, b), exp)
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn tests_comp() {
|
||||||
|
let a1 = vec![121, 144, 19, 161, 19, 144, 19, 11];
|
||||||
|
let a2 = vec![
|
||||||
|
11 * 11,
|
||||||
|
121 * 121,
|
||||||
|
144 * 144,
|
||||||
|
19 * 19,
|
||||||
|
161 * 161,
|
||||||
|
19 * 19,
|
||||||
|
144 * 144,
|
||||||
|
19 * 19,
|
||||||
|
];
|
||||||
|
testing(a1, a2, true);
|
||||||
|
let a1 = vec![121, 144, 19, 161, 19, 144, 19, 11];
|
||||||
|
let a2 = vec![
|
||||||
|
11 * 21,
|
||||||
|
121 * 121,
|
||||||
|
144 * 144,
|
||||||
|
19 * 19,
|
||||||
|
161 * 161,
|
||||||
|
19 * 19,
|
||||||
|
144 * 144,
|
||||||
|
19 * 19,
|
||||||
|
];
|
||||||
|
testing(a1, a2, false);
|
||||||
|
let a1 = vec![121, 144, 19, 161, -19, 144, 19, -11];
|
||||||
|
let a2 = vec![
|
||||||
|
11 * 11,
|
||||||
|
121 * 121,
|
||||||
|
144 * 144,
|
||||||
|
19 * 19,
|
||||||
|
161 * 161,
|
||||||
|
19 * 19,
|
||||||
|
144 * 144,
|
||||||
|
19 * 19,
|
||||||
|
];
|
||||||
|
testing(a1, a2, true);
|
||||||
|
}
|
Loading…
Reference in a new issue