#LQB0071. 三角形填数

三角形填数

题目描述: 有一个由十二个圆圈组成的三角形,三角形的每一边有五个圆圈,圆圈的编号方式如下:

将整数 1 到 12 分别填到三角形的每个圆圈中,每个整数填一次,使得三角形每条边上的五个整数之和都等于 X。现除了 2 号、7 号、8 号、9 号以外的圆圈均已填上整数。请编写程序,求解 2 号、7 号、8 号、9 号的圆圈中应该填的整数,并输出这四个整数。
例如:已知 X = 34,圆圈中已经填的整数分别为(按编号顺序给出):
1 号:4
3 号:1
4 号:3
5 号:10
6 号:6
10 号:5
11 号:2
12 号:8

如下图所示:

可以发现,2 号、7 号、8 号、9 号圆圈中应该填的整数分别是 9,11,12,7

输入描述:

第一行输入一个整数 X(28≤X≤37),表示三角形每一边上的五个整数的目标和;
第二行输入八个整数(1≤整数≤12),分别表示编号为 1,3,4,5,6,10,11,12 的圆圈中填的整数,整数之间以一个空格隔开。

输出描述:

输出四个整数,分别表示编号为 2,7,8,9 的圆圈中要填的整数,整数之间以一个空格隔开。题目数据保证有唯一解。

34
4 1 3 10 6 5 2 8
9 11 12 7

Limitation

1s, 1024KiB for each test case.