{"trustable":true,"prependHtml":"\u003cstyle type\u003d\"text/css\"\u003e\n section pre {\n display: block;\n padding: 9.5px;\n margin: 0 0 10px;\n font-size: 13px;\n line-height: 1.42857143;\n word-break: break-all;\n word-wrap: break-word;\n color: #333;\n background: rgba(255, 255, 255, 0.5);\n border: 1px solid #ccc;\n border-radius: 6px;\n }\n\u003c/style\u003e\n\u003cscript\u003e\n window.katexOptions \u003d {\n delimiters: [\n {left: \u0027\\\\(\u0027, right: \u0027\\\\)\u0027, display: false},\n {left: \u0027\\\\[\u0027, right: \u0027\\\\]\u0027, display: true}\n ]\n };\n\u003c/script\u003e\n","sections":[{"title":"问题描述","value":{"format":"HTML","content":"\u003csection\u003e\n\u003cp\u003e在AtCoder王国中有\u003cvar\u003e\\(N\\)\u003c/var\u003e种神奇的宝石,编号为\u003cvar\u003e\\(1, 2, \\ldots, N\\)\u003c/var\u003e。\u003cbr\u003e\nTakahashi正试图通过将宝石排成一排来制作一个饰品。\u003cbr\u003e\n对于某些宝石对,我们可以将这两颗宝石相邻放置;对于其他宝石对,我们则不能。我们有\u003cvar\u003e\\(M\\)\u003c/var\u003e对宝石可以相邻放置:(宝石\u003cvar\u003e\\(A_1\\)\u003c/var\u003e, 宝石\u003cvar\u003e\\(B_1\\)\u003c/var\u003e), (宝石\u003cvar\u003e\\(A_2\\)\u003c/var\u003e, 宝石\u003cvar\u003e\\(B_2\\)\u003c/var\u003e), \u003cvar\u003e\\(\\ldots\\)\u003c/var\u003e, (宝石\u003cvar\u003e\\(A_M\\)\u003c/var\u003e, 宝石\u003cvar\u003e\\(B_M\\)\u003c/var\u003e)。对于其他宝石对,这两颗宝石则不能相邻放置。(在这些对中,顺序并不重要。)\u003cbr\u003e\n判断是否可能形成一个宝石序列,其中至少包含每种宝石\u003cvar\u003e\\(C_1, C_2, \\dots, C_K\\)\u003c/var\u003e。如果答案是肯定的,则找出形成这样一个序列所需的最少宝石数量。\u003c/p\u003e\n\u003c/section\u003e"}},{"title":"约束条件","value":{"format":"HTML","content":"\u003csection\u003e\n\u003cul\u003e\n\u003cli\u003e输入中的所有值均为整数。\u003c/li\u003e\n\u003cli\u003e\u003cvar\u003e\\(1 ≤\u0026nbsp;N ≤ 10^5\\)\u003c/var\u003e\u003c/li\u003e\n\u003cli\u003e\u003cvar\u003e\\(0 ≤\u0026nbsp;M ≤ 10^5\\)\u003c/var\u003e\u003c/li\u003e\n\u003cli\u003e\u003cvar\u003e\\(1 ≤ A_i \u0026lt; B_i ≤ N\\)\u003c/var\u003e\u003c/li\u003e\n\u003cli\u003e如果\u003cvar\u003e\\(i ≠ j\\)\u003c/var\u003e,则\u003cvar\u003e\\((A_i, B_i) ≠ (A_j, B_j)\\)\u003c/var\u003e。\u003c/li\u003e\n\u003cli\u003e\u003cvar\u003e\\(1 ≤ K ≤ 17\\)\u003c/var\u003e\u003c/li\u003e\n\u003cli\u003e\u003cvar\u003e\\(1 ≤ C_1 \u0026lt; C_2 \u0026lt; \\dots \u0026lt; C_K ≤ N\\)\u003c/var\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/section\u003e"}},{"title":"输入","value":{"format":"HTML","content":"\u003csection\u003e\n\u003cp\u003e输入以以下格式从标准输入给出:\u003c/p\u003e\n\u003cpre\u003e\u003cvar\u003e\\(N\\)\u003c/var\u003e \u003cvar\u003e\\(M\\)\u003c/var\u003e\r\n\u003cvar\u003e\\(A_1\\)\u003c/var\u003e \u003cvar\u003e\\(B_1\\)\u003c/var\u003e\r\n\u003cvar\u003e\\(A_2\\)\u003c/var\u003e \u003cvar\u003e\\(B_2\\)\u003c/var\u003e\r\n\u003cvar\u003e\\(\\hspace{7mm}\\vdots\\)\u003c/var\u003e\r\n\u003cvar\u003e\\(A_M\\)\u003c/var\u003e \u003cvar\u003e\\(B_M\\)\u003c/var\u003e\r\n\u003cvar\u003e\\(K\\)\u003c/var\u003e\r\n\u003cvar\u003e\\(C_1\\)\u003c/var\u003e \u003cvar\u003e\\(C_2\\)\u003c/var\u003e \u003cvar\u003e\\(\\cdots\\)\u003c/var\u003e \u003cvar\u003e\\(C_K\\)\u003c/var\u003e\r\n\u003c/pre\u003e\n\u003c/section\u003e"}},{"title":"输出","value":{"format":"HTML","content":"\u003csection\u003e\n\u003cp\u003e打印出形成一个包含每种宝石\u003cvar\u003e\\(C_1, C_2, \\dots, C_K\\)\u003c/var\u003e的序列所需的最少宝石数量。\u003cbr\u003e\n如果无法形成这样的序列,则打印出\u003ccode\u003e-1\u003c/code\u003e。\u003c/p\u003e\n\u003c/section\u003e"}},{"title":"示例 1","value":{"format":"HTML","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e4 3\r\n1 4\r\n2 4\r\n3 4\r\n3\r\n1 2 3\r\n\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e5\r\n\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\n\u003csection\u003e\n\n\u003c/section\u003e\n\n\u003csection\u003e\n\n\u003cp\u003e例如,通过按照宝石的顺序\u003cvar\u003e\\([1, 4, 2, 4, 3]\\)\u003c/var\u003e排列,我们可以得到一个长度为\u003cvar\u003e\\(5\\)\u003c/var\u003e的序列,其中包含宝石\u003cvar\u003e\\(1, 2, 3\\)\u003c/var\u003e。\u003c/p\u003e\n\u003c/section\u003e"}},{"title":"示例 2","value":{"format":"HTML","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e4 3\r\n1 4\r\n2 4\r\n1 2\r\n3\r\n1 2 3\r\n\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e-1\r\n\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\n\u003csection\u003e\n\n\u003c/section\u003e\n\n\u003csection\u003e\n\n\u003c/section\u003e"}},{"title":"示例 3","value":{"format":"HTML","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e10 10\r\n3 9\r\n3 8\r\n8 10\r\n2 10\r\n5 8\r\n6 8\r\n5 7\r\n6 7\r\n1 6\r\n2 4\r\n4\r\n1 2 7 9\r\n\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e11\r\n\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\n\u003csection\u003e\n\n\u003c/section\u003e\n\n\u003csection\u003e\n\n\u003cp\u003e例如,通过按照宝石的顺序\u003cvar\u003e\\([1, 6, 7, 5, 8, 3, 9, 3, 8, 10, 2]\\)\u003c/var\u003e排列,我们可以得到一个长度为\u003cvar\u003e\\(11\\)\u003c/var\u003e的序列,其中包含宝石\u003cvar\u003e\\(1, 2, 7, 9\\)\u003c/var\u003e。\u003c/p\u003e\n\u003c/section\u003e"}}]}