FADZCXCSDYFHN5WAO2VKOZ6XGNTUZPSOPYTZCGC3VEYOSPSKXBHQC package mainimport ("log")const (p1s = 7p2s = 9maxScore = 1000)type player struct {pos intscore int}func main() {if err := myMain(); err != nil {log.Println(err)}}func myMain() error {log.Println(solveFirst())return nil}func solveFirst() int {p1 := player{pos: p1s}p2 := player{pos: p2s}dice := 1var round intfor round = 1; ; round++ {// payer 1p1.addScore(dice)dice += 3if p1.score >= maxScore {break}// player 2p2.addScore(dice)dice += 3if p2.score >= maxScore {break}}if p1.score >= maxScore {return p2.score * (6*round - 3)} else {return p1.score * 6 * round}}func (p *player) addScore(dice int) {p.pos += dice + dice + 1 + dice + 2if p.pos%10 == 0 {p.score += 10} else {p.score += p.pos % 10}}
module maingo 1.17