challenges

my solutions to various "programming challenge" problems
git clone https://wehaveforgeathome.hates.computer/challenges.git
Log | Files | Refs | LICENSE

019.go (448B)


      1 package main
      2 
      3 import "fmt"
      4 
      5 func main() {
      6   d := 366
      7   s := 0
      8   for y := 1901; y <= 2000; y++ {
      9     for m := 1; m <= 12; m++ {
     10       if d % 7 == 0 {
     11         s++
     12       }
     13       switch m {
     14       case 1, 3, 5, 7, 8, 10, 12:
     15         d += 31
     16       case 2:
     17         if y % 4 == 0 && (y % 100 != 0 || y % 400 == 0) {
     18           d += 29
     19         } else {
     20           d += 28
     21         }
     22       case 4, 6, 9, 11:
     23         d += 30
     24       }
     25     }
     26   }
     27   fmt.Println(s)
     28 }