Skip to content

Dawn's Lawn

Go script:

package main

import (
    "bufio"
    "os"
)


func main(){
    file, _ := os.Open("dawn2.txt")
    scanner := bufio.NewScanner(file)

    mp := map[rune]int{
        '.':  0,
        '_':  1,
        '\\': 2,
        '-':  3,
        '/':  4,
        '|':  5,
        '*':  6,
    }

    var side int
    ct := 0
    for scanner.Scan(){
        line := scanner.Text()
        // println(line)
        side = len(line)
        for i, c := range line{
            if state, ok := mp[c]; ok{
                // print(state)
                state -= 2
                if state>0{
                    // print(state+side-i-1, " ")
                    ct += map[bool]int{true: 1, false: 0}[state+side-i-1 >= 6]
                }
            }else{
                print(" ")
            }
        }
        // println()
    }
    // println(side)
    println(ct)
}