init
This commit is contained in:
6
problems/p14/Cargo.toml
Normal file
6
problems/p14/Cargo.toml
Normal file
@@ -0,0 +1,6 @@
|
||||
[package]
|
||||
name = "p14"
|
||||
version = "0.1.0"
|
||||
edition = "2024"
|
||||
|
||||
[dependencies]
|
||||
28
problems/p14/src/main.rs
Normal file
28
problems/p14/src/main.rs
Normal file
@@ -0,0 +1,28 @@
|
||||
use std::collections::HashMap;
|
||||
|
||||
fn gen_seq(n: u64) -> u64 {
|
||||
if n & 1 == 0 { n >> 1 } else { 3 * n + 1 }
|
||||
}
|
||||
|
||||
fn main() {
|
||||
let mut result = HashMap::new();
|
||||
for i in 1..1000000 {
|
||||
let mut seq = gen_seq(i);
|
||||
let mut counter: u32 = 1;
|
||||
while seq != 1 {
|
||||
seq = gen_seq(seq);
|
||||
counter += 1;
|
||||
}
|
||||
counter += 1;
|
||||
result.insert(i, counter);
|
||||
}
|
||||
let mut biggest_seq = 0;
|
||||
let mut biggest_seq_index = 0;
|
||||
for (k, v) in result {
|
||||
if v > biggest_seq {
|
||||
biggest_seq = v;
|
||||
biggest_seq_index = k;
|
||||
}
|
||||
}
|
||||
println!("{biggest_seq_index}")
|
||||
}
|
||||
Reference in New Issue
Block a user