This commit is contained in:
timeshifter
2025-03-17 16:21:23 +01:00
parent 67505e208d
commit 898ba76693
2 changed files with 40 additions and 0 deletions
+6
View File
@@ -0,0 +1,6 @@
[package]
name = "euler28"
version = "0.1.0"
edition = "2024"
[dependencies]
+34
View File
@@ -0,0 +1,34 @@
fn main() {
let result = spiral(1001);
println!("{result}");
}
fn spiral(edge_length: usize) -> usize {
let max = edge_length * edge_length;
let mut sum = 1;
let mut number = 1;
let mut offset = 2;
let steps = 4;
loop {
for _ in 0..steps {
number += offset;
sum += number;
}
offset += 2;
if number == max {
break;
}
}
sum
}
#[cfg(test)]
mod tests {
use crate::spiral;
#[test]
fn spiral_5() {
assert_eq!(spiral(5), 101);
}
}