#L6037. 「雅礼集训 2017 Day4」猜数列
「雅礼集训 2017 Day4」猜数列
题目描述
有一个长度为 的,由 到 之间的数字构成的未知数列 。
你现在有 个线索,每个线索的生成方式如下:
- 选择序列 的某一个位置 作为起点;
- 选择某个方向(向左或向右);
- 从 出发,沿着选择的方向走,每遇到一个之前未出现的数字,就将它加入线索中。
(注意:每条线索的长度都不超过 $9。)
你的任务是求出满足所有线索的长度最小的序列的长度。
输入格式
第一行一个整数 ,表示线索的数量。
接下来 行,每行有若干个以 结尾的整数,表示一条线索。
输出格式
如果无解,请输出 -1;
否则输出可能的最小长度。
样例 1
输入
5
1 2 0
3 4 0
1 4 3 0
3 1 4 2 0
1 2 4 3 0
输出
7
解释
一个可能的解为 ,其中:
- 可由从第 个元素向左遍历得到;
- 可由从第 个元素向右遍历得到;
- 可由从第 个元素向右遍历得到;
- 可由从第 个元素向左遍历得到;
- 可由从第 个元素向右遍历得到。
样例 2
输入
3
1 2 0
2 3 0
3 4 0
输出
-1
数据范围与提示
- 对于 的数据,答案不超过 ;
- 对于另外 的数据,保证存在一个解,使得所有线索都可以通过从某个位置向右遍历得到;
- 对于 的数据,。