This commit is contained in:
2022-12-02 07:41:32 +01:00
parent 9fe1abe08c
commit e84c13c689
3 changed files with 140 additions and 0 deletions

47
day02/common/round.go Normal file
View File

@@ -0,0 +1,47 @@
package common
type Move int
const (
Rock Move = iota
Paper
Scissor
)
type Round struct {
Opponent Move
Response Move
}
func (round Round) GetScore() int {
score := 0
switch round {
case Round{Rock, Rock}:
score += 4
case Round{Rock, Paper}:
score += 8
case Round{Rock, Scissor}:
score += 3
case Round{Paper, Rock}:
score += 1
case Round{Paper, Paper}:
score += 5
case Round{Paper, Scissor}:
score += 9
case Round{Scissor, Rock}:
score += 7
case Round{Scissor, Paper}:
score += 2
case Round{Scissor, Scissor}:
score += 6
}
return score
}
func GetTotalScore(rounds []Round) int {
score := 0
for _, round := range rounds {
score += round.GetScore()
}
return score
}