Prime triangle: Difference between revisions

m
Rust - minor edit
(Added Swift solution)
m (Rust - minor edit)
Line 944:
}
 
fn prime_triangle_count(a: &mut [u32],) count: &mut-> u32) {
let mut count = 0;
if a.len() == 2 {
if is_prime(a[0] + a[1]) {
*count += 1;
}
} else return;{
for i in 1..a.len() - 1 {
}
for i in 1..a.len if is_prime()a[0] -+ 1a[i]) {
if is_prime(a[0] + a[.swap(i]), {1);
a.swap count += prime_triangle_count(i,&mut a[1..]);
prime_triangle_count(&mut a[1..]swap(i, count1);
a.swap(i, 1);}
}
}
}count
}
 
Line 983 ⟶ 985:
for n in 2..21 {
let mut a: Vec<u32> = (1..=n).collect();
letif mutn count> =2 0;{
prime_triangle_count(&mut a, &mut count print!(" ");
if n == 2 {
print!("{count}");
} else {
print!(" {count}");
}
print!("{}", prime_triangle_count(&mut a));
}
println!();
Line 1,020 ⟶ 1,019:
1 1 1 1 1 2 4 7 24 80 216 648 1304 3392 13808 59448 155464 480728 1588162
 
Elapsed time: 754711 milliseconds
</pre>
 
1,777

edits