Skip to content

Commit

Permalink
day 219: fix more complexity and a bug in vertical and diag
Browse files Browse the repository at this point in the history
  • Loading branch information
vaskoz committed Apr 1, 2019
1 parent 6bebf2c commit a75e4b5
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 38 deletions.
6 changes: 3 additions & 3 deletions day219/problem.go
Original file line number Diff line number Diff line change
Expand Up @@ -97,9 +97,9 @@ func isHorizontal(board map[Column]map[Row]Player, r Row, c Column, p Player) bo
}

func isVertical(board map[Column]map[Row]Player, r Row, c Column, p Player) bool {
return p == board[c+1][r] &&
p == board[c+2][r] &&
p == board[c+3][r]
return p == board[c][r+1] &&
p == board[c][r+2] &&
p == board[c][r+3]
}

func isDiagonalUpRight(board map[Column]map[Row]Player, r Row, c Column, p Player) bool {
Expand Down
52 changes: 17 additions & 35 deletions day219/problem_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -89,46 +89,28 @@ func TestConnectFourDiagonalDownRightRedWins(t *testing.T) {
if err := cfb.Move(Black, Column(0)); err != nil {
t.Errorf("expected nil got %v", err)
}
if p := cfb.Winner(); p != None {
t.Errorf("expected no winner got %v", p)
}
if err := cfb.Move(Red, Column(0)); err != nil {
t.Errorf("expected nil, got %v", err)
}
if p := cfb.Winner(); p != None {
t.Errorf("expected no winner got %v", p)
}

}
for i := 0; i < 3; i++ {
if err := cfb.Move(Red, Column(1)); err != nil {
t.Errorf("expected nil got %v", err)
}
if p := cfb.Winner(); p != None {
t.Errorf("expected no winner got %v", p)
}
if err := cfb.Move(Black, Column(1)); err != nil {
t.Errorf("expected nil, got %v", err)
}
if p := cfb.Winner(); p != None {
t.Errorf("expected no winner got %v", p)
}
if err := cfb.Move(Red, Column(0)); err != nil {
t.Errorf("expected nil, got %v", err)
}
for i := 0; i < 3; i++ {
if err := cfb.Move(Black, Column(2)); err != nil {
for i := 0; i < 2; i++ {
if err := cfb.Move(Black, Column(1)); err != nil {
t.Errorf("expected nil got %v", err)
}
if p := cfb.Winner(); p != None {
t.Errorf("expected no winner got %v", p)
}
if err := cfb.Move(Red, Column(2)); err != nil {
t.Errorf("expected nil, got %v", err)
}
if p := cfb.Winner(); p != None {
t.Errorf("expected no winner got %v", p)
}
}
if err := cfb.Move(Red, 3); err != nil {
if err := cfb.Move(Red, Column(1)); err != nil {
t.Errorf("expected nil got %v", err)
}
if err := cfb.Move(Black, Column(2)); err != nil {
t.Errorf("expected nil got %v", err)
}
if err := cfb.Move(Red, Column(2)); err != nil {
t.Errorf("expected nil got %v", err)
}
if p := cfb.Winner(); p != None {
t.Errorf("expected no winner got %v", p)
}
if err := cfb.Move(Red, Column(3)); err != nil {
t.Errorf("expected nil got %v", err)
}
if p := cfb.Winner(); p != Red {
Expand Down

0 comments on commit a75e4b5

Please sign in to comment.