diff options
| author | David Ferrone <zapwai@gmail.com> | 2023-01-01 15:28:22 -0500 |
|---|---|---|
| committer | David Ferrone <zapwai@gmail.com> | 2023-01-01 15:28:22 -0500 |
| commit | 9aa729649b9d39065083745b1c42e37493e8faac (patch) | |
| tree | 7a9c47b0585dced55b250b41e4da0abed8b367c1 | |
| parent | 1bf0af88b12558a237b14dc0cbdf5eef7cedf1c2 (diff) | |
| download | perlweeklychallenge-club-9aa729649b9d39065083745b1c42e37493e8faac.tar.gz perlweeklychallenge-club-9aa729649b9d39065083745b1c42e37493e8faac.tar.bz2 perlweeklychallenge-club-9aa729649b9d39065083745b1c42e37493e8faac.zip | |
Rust week 197
| -rw-r--r-- | challenge-197/zapwai/rust/ch-1.rs | 11 | ||||
| -rw-r--r-- | challenge-197/zapwai/rust/ch-2.rs | 28 |
2 files changed, 39 insertions, 0 deletions
diff --git a/challenge-197/zapwai/rust/ch-1.rs b/challenge-197/zapwai/rust/ch-1.rs new file mode 100644 index 0000000000..a492ac2d21 --- /dev/null +++ b/challenge-197/zapwai/rust/ch-1.rs @@ -0,0 +1,11 @@ +fn main() { + // let mut v = vec![0,1,0,2,0]; + let mut v = vec![1,0,3,0,0,5]; + println!("Input: {:?}",v); + let origlen = v.len(); + v.retain( |&x| x != 0 ); + let len = origlen - v.len(); + let z = vec![0;len]; + v = [v,z].concat(); + println!("Output: {:?}",v); +} diff --git a/challenge-197/zapwai/rust/ch-2.rs b/challenge-197/zapwai/rust/ch-2.rs new file mode 100644 index 0000000000..d7a0731029 --- /dev/null +++ b/challenge-197/zapwai/rust/ch-2.rs @@ -0,0 +1,28 @@ +fn main() { + let mut list = vec![1,5,1,1,6,4]; + // let mut list = vec![1,3,2,2,3,1]; + println!("Input: {:?}",list); + let mut cnt = 1; + while cnt != 0 { + cnt = 0; + for i in 0..list.len()-1 { + if i % 2 == 0 { + if list[i+1] < list[i] { + cnt += 1; + let hold = list[i]; + list[i] = list[i+1]; + list[i+1] = hold; + } + } + else { + if list[i+1] > list[i] { + cnt += 1; + let hold = list[i]; + list[i] = list[i+1]; + list[i+1] = hold; + } + } + } + } + println!("Output: {:?}",list); +} |
