bzoj#P4794. [CERC2016] Invisible Integers

[CERC2016] Invisible Integers

题目描述

《隐形的整数》是一个简单的猜数游戏。在这个游戏中,给定 nn 个提示,玩家将尝试去猜一个仅包含自然数 1199 的数字序列,满足所有 nn 个提示。每个提示是一个包含若干互不相同的 1199 之间的整数序列,它是这样生成的:

  1. 随机选择一个序列中的位置作为起点。

  2. 随机选择任意一个方向,左或者右。

  3. 从起点开始沿着选定的方向走,遍历完这个方向的每个数字,将每个数字第一次出现的顺序记录下来。

请找到长度最短的满足所有 nn 个提示的序列。

输入格式

第一行包含一个正整数 nn,表示提示的个数。
接下来 nn 行,每行若干个互不相同的 1199 之间的整数,依次表示每个提示,每一行以 0 为终止。

输出格式

输出一行一个整数,即最短长度,若无解则输出 -1

5
1 2 0
3 4 0
1 4 3 0
3 1 4 2 0
1 2 4 3 0
7

样例解释

一个可行的序列是 (1,2,1,4,1,3,4)(1,2,1,4,1,3,4)
对于提示序列 (1,2)(1,2),可以选择位置 33,然后往左走。
对于提示序列 (3,4)(3,4),可以选择位置 66,然后往右走。
对于提示序列 (1,4,3)(1,4,3),可以选择位置 33,然后往右走。
对于提示序列 (3,1,4,2)(3,1,4,2),可以选择位置 66,然后往左走。
对于提示序列 (1,2,4,3)(1,2,4,3),可以选择位置 11,然后往右走。

数据规模与约定

对于 100%100\% 的数据,1n101\le n\le 10