init
This commit is contained in:
6
problems/p30/Cargo.toml
Normal file
6
problems/p30/Cargo.toml
Normal file
@@ -0,0 +1,6 @@
|
||||
[package]
|
||||
name = "p30"
|
||||
version = "0.1.0"
|
||||
edition = "2024"
|
||||
|
||||
[dependencies]
|
||||
26
problems/p30/src/main.rs
Normal file
26
problems/p30/src/main.rs
Normal file
@@ -0,0 +1,26 @@
|
||||
// >>> 9**5*6
|
||||
// 354294
|
||||
// >>> 9**5*7
|
||||
// 413343
|
||||
//
|
||||
// 推测n < 999999
|
||||
|
||||
fn is_fifth_power_sum(num: u32) -> bool {
|
||||
let mut digits: Vec<u32> = Vec::new();
|
||||
let mut a = num / 10;
|
||||
let mut b = num % 10;
|
||||
while a != 0 {
|
||||
digits.push(b);
|
||||
b = a % 10;
|
||||
a /= 10;
|
||||
}
|
||||
digits.push(b);
|
||||
|
||||
let sum: u32 = digits.iter().map(|x| x.pow(5)).sum();
|
||||
sum == num
|
||||
}
|
||||
|
||||
fn main() {
|
||||
let sum_of_is_sum: u32 = (2..999999).filter(|n| is_fifth_power_sum(*n)).sum();
|
||||
println!("{sum_of_is_sum}");
|
||||
}
|
||||
Reference in New Issue
Block a user