예제 #1
0
파일: field.go 프로젝트: umisama/procon26
func NewField(input []string) (*Field, error) {
	buf, err := buffer.NewBufferByInput(input)
	if err != nil {
		return nil, err
	}

	return &Field{
		buffer: buf,
	}, nil
}
예제 #2
0
파일: stone.go 프로젝트: umisama/procon26
func NewStoneBase(number int, input []string) (*StoneBase, error) {
	buf, err := buffer.NewBufferByInput(input)
	if err != nil {
		return nil, err
	}
	rect := buf.GetRect()
	trimmedBuf := buf.Trim(rect)

	m := &StoneBase{
		number: number,
		buffer: trimmedBuf,
		rect:   rect,
		count:  trimmedBuf.Count(),
	}

	m.createVariations()
	return m, nil
}