Wrote program for Day 5

This commit is contained in:
Mariano Riefolo 2024-07-30 11:17:39 +02:00
parent 539eddce01
commit 9b06185114
3 changed files with 34 additions and 0 deletions

View File

@ -0,0 +1,6 @@
[package]
name = "pair_of_socks"
version = "0.1.0"
edition = "2021"
[dependencies]

View File

@ -0,0 +1,12 @@
pub fn sock_pairs(socks: &str) -> usize {
let mut sock_pairs = 0;
let mut socks = String::from(socks);
while !socks.is_empty() {
let full_length = socks.len();
socks = socks.replace(socks.chars().next().unwrap(), "");
sock_pairs += (full_length - socks.len()) / 2;
}
sock_pairs
}

View File

@ -0,0 +1,16 @@
use pair_of_socks::sock_pairs;
#[test]
fn one_sock_pair() {
assert_eq!(sock_pairs("AA"), 1);
}
#[test]
fn two_sock_pair() {
assert_eq!(sock_pairs("ABABC"), 2);
}
#[test]
fn four_sock_pair() {
assert_eq!(sock_pairs("CABBACCC"), 4);
}