Added Force Quit to intcode processor

This commit is contained in:
2019-12-16 17:31:11 -06:00
parent 11019fa77e
commit 0e315631dd
4 changed files with 238 additions and 21 deletions

View File

@@ -10,6 +10,35 @@ type Coordinate struct {
X, Y int
}
func NewCoordinate(x, y int) *Coordinate {
return &Coordinate{x, y}
}
func (c *Coordinate) GetNorthCoord() *Coordinate {
return &Coordinate{
X: c.X,
Y: c.Y - 1,
}
}
func (c *Coordinate) GetEastCoord() *Coordinate {
return &Coordinate{
X: c.X + 1,
Y: c.Y,
}
}
func (c *Coordinate) GetSouthCoord() *Coordinate {
return &Coordinate{
X: c.X,
Y: c.Y + 1,
}
}
func (c *Coordinate) GetWestCoord() *Coordinate {
return &Coordinate{
X: c.X - 1,
Y: c.Y,
}
}
func CoordinateFromString(str string) *Coordinate {
c := Coordinate{}
r := strings.NewReader(str)
@@ -35,3 +64,7 @@ func (c Coordinate) String() string {
func (c Coordinate) Distance(t Coordinate) int {
return AbsInt(c.X-t.X) + AbsInt(c.Y-t.Y)
}
func (c Coordinate) Equals(c2 Coordinate) bool {
return c.X == c2.X && c.Y == c2.Y
}