47 lines
1.1 KiB
Markdown
47 lines
1.1 KiB
Markdown
|
---
|
||
|
id: 5900f4291000cf542c50ff3c
|
||
|
title: 'Problem 189: Tri-colouring a triangular grid'
|
||
|
challengeType: 5
|
||
|
forumTopicId: 301825
|
||
|
dashedName: problem-189-tri-colouring-a-triangular-grid
|
||
|
---
|
||
|
|
||
|
# --description--
|
||
|
|
||
|
Consider the following configuration of 64 triangles:
|
||
|
|
||
|
We wish to colour the interior of each triangle with one of three colours: red, green or blue, so that no two neighbouring triangles have the same colour. Such a colouring shall be called valid. Here, two triangles are said to be neighbouring if they share an edge. Note: if they only share a vertex, then they are not neighbours.
|
||
|
|
||
|
For example, here is a valid colouring of the above grid:
|
||
|
|
||
|
A colouring C' which is obtained from a colouring C by rotation or reflection is considered distinct from C unless the two are identical.
|
||
|
|
||
|
How many distinct valid colourings are there for the above configuration?
|
||
|
|
||
|
# --hints--
|
||
|
|
||
|
`euler189()` should return 10834893628237824.
|
||
|
|
||
|
```js
|
||
|
assert.strictEqual(euler189(), 10834893628237824);
|
||
|
```
|
||
|
|
||
|
# --seed--
|
||
|
|
||
|
## --seed-contents--
|
||
|
|
||
|
```js
|
||
|
function euler189() {
|
||
|
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
euler189();
|
||
|
```
|
||
|
|
||
|
# --solutions--
|
||
|
|
||
|
```js
|
||
|
// solution required
|
||
|
```
|