summaryrefslogtreecommitdiff
path: root/problems/1-1/main.go
diff options
context:
space:
mode:
authormo khan <mo@mokhan.ca>2021-09-06 19:16:26 -0600
committermo khan <mo@mokhan.ca>2021-09-06 19:16:26 -0600
commite00bc7884d4139ff1400aa2573b55951a009ce5d (patch)
treed414f9d8e36c7fd24322308d70c9723ff0827f8e /problems/1-1/main.go
parent5419f9c6ff5cb23f8ee07d786b31b93e4253e565 (diff)
try to plot table of results
Diffstat (limited to 'problems/1-1/main.go')
-rw-r--r--problems/1-1/main.go39
1 files changed, 39 insertions, 0 deletions
diff --git a/problems/1-1/main.go b/problems/1-1/main.go
new file mode 100644
index 0000000..e867d16
--- /dev/null
+++ b/problems/1-1/main.go
@@ -0,0 +1,39 @@
+package main
+
+import (
+ "fmt"
+ "math"
+)
+
+func main() {
+ // 1 second = 1,000,000 microseconds
+ // 1 minute = 60 seconds = 60,000,000 microseconds
+ // 1 hour = 60 minutes = 3600 seconds = 3,600,000,000 microseconds
+ // 1 day = 24 hours = 1440 mins = 86400 seconds = 86,400,000,000 microseconds
+
+ // lg(n)
+ results := [4]float64{0, 0, 0, 0}
+ i := 0
+ for n := 1.0; ; n++ {
+ x := math.Log2(n)
+
+ if i == 0 && x > 1_000_000 {
+ results[i] = x
+ i++
+ }
+ if i == 1 && x > 60_000_000 {
+ results[i] = x
+ i++
+ }
+ if i == 2 && x > 3_600_000_000 {
+ results[i] = x
+ i++
+ }
+ if i == 3 && x > 86_400_000_000 {
+ results[i] = x
+ break
+ }
+ }
+
+ fmt.Printf("lg(n)|%v|%v|%v|%v|\n", results[0], results[1], results[2], results[3])
+}