let start_time = Date.now();
for(let a=0;a<2001;a++){
for(let b=0;b<2001;b++){
for(let c=0;c<2001;c++){
if(a*a + b*b == c*c && a + b +c == 2000){
console.log(`a, b, c: ${a} ${b} ${c}`);
}
}
}
}
let end_time = Date.now();
console.log(`一共花费的时间为:${(end_time - start_time)/1000}s`);
console.log('结束!');
package main
import (
"fmt"
"time"
)
func main() {
t1 := time.Now()
for a := 0; a < 2001; a++ {
for b := 0; b < 2001; b++ {
for c := 0; c < 2001; c++ {
if a*a+b*b == c*c && a+b+c == 2000 {
fmt.Println(a, b, c)
}
}
}
}
useTime := time.Now().Sub(t1)
fmt.Println(useTime)
}
// use std::time::{Duration, SystemTime};
use std::time;
fn main() {
let t1 = time::Instant::now();
for i in 0..2001 {
for j in 0..2001 {
for k in 0..2001 {
if i * i + j * j == k * k && i + j + k == 2000 {
println!("i,j,k={}, {}, {}", i, j, k);
}
}
}
}
let t2 = time::Instant::now();
println!("{:?}", t2.duration_since(t1));
}
nodejs: v14.18 – 6.761s
golang – 9.270648008s
rust – 10.731204105s
很诧异!但是应该是rust和go浪费在了最后时间计算上了!