**From New Scientist #1493, 30th January 1986** [link]

England, Scotland, Wales, Ireland and France took part in the Rugby union five-nations championship, each country playing each other country once. Two match points were awarded for a win and one match point for a draw, and the total number of match points gained by each country was: England 7, Scotland 6, Wales 4, Ireland 2, France 1.

No two matches had the same score and no country scored more than six points in any match; but each country scored exactly the same number of points in the championship as each other country, and Wales also had this number of points scored against them.

Those not familiar with the point scoring system of rugby union merely need to know that it is not possible for a side to score one, two or five points in a match.

What were the results and scores of Wales’s matches in the championship?

[enigma344]

### Like this:

Like Loading...

*Related*

This Python 3 program uses the

Football.substituted_table()function from theenigma.pylibrary to find possible match outcomes. Then it uses a recursive function to allocate scores to the matches that satisfy the goals (match points) for / against conditions. It runs in 133ms.Solution:The scores in Wales’ matches are: England vs. Wales = 3-0; Scotland vs. Wales = 3-3; Wales vs. Ireland = 4-4; Wales vs. France = 6-3.Each team scored 13 points overall.

There are 6 different ways to assign the scores, but the scores in the England vs. Scotland, England vs. Wales, Scotland vs. Wales, Wales vs. Ireland, Wales vs. France, and Ireland vs. France matches are always the same.

The scores in the matches that don’t involve Wales are:

England vs. Scotland = 0-0;

England vs. Ireland = 4-0 or 4-3 or 6-0;

England vs. France = 6-0 or 6-4 or 4-0;

Scotland vs. France = 6-4 or 6-0 or 4-0;

Scotland vs. Ireland = 4-3 or 4-0 or 6-0;

Ireland vs. France = 6-6.

Here’s a declarative solution in MiniZinc. It runs in 86ms.

If you want to see the six possible solutions you can remove the comments in the

outputclause to show all the scores.