Closed
Description
fn main() {
let mut va = [0.0, .. 102];
let mut vb = [0.0, .. 102];
let mut p=0.0;
va[51]=1.0;
do int::range(1,300001) |k| {
do int::range(2,101) |i| {
vb[i] = (1.0/6.0)*va[i-1] + (4.0/6.0)*va[i] + (1.0/6.0)*va[i+1];
true
}
let n = (1.0/6.0)*va[2] + (1.0/6.0)*va[100];
p += n * (k as float);
vb[0] += n;
va=vb;
if k % 5000 == 0 {
io::println(fmt!("%.10f %.10f %d", va[0], p, k));
}
true
}
io::println(fmt!("%.10f %.10f", va[0], p));
}
Built with rustc --opt-level 0, it runs fast.
With any other --opt-level, it runs slow.
Metadata
Metadata
Assignees
Labels
No labels