#include<iostream> #include<vector> #include<ctime> #include<algorithm> #include<cstdio> using namespace std; int n, maxd; int wrongn(int *p, int a, int b) { int t = 0; for (int i = a; i < b; i++) { if (p[i + 1] - p[i] != 1) t++; } return t; } bool dfs(int h, int act, int *perm) { int i, j, st, ed, k, a, b, temp[12]; /*if (!wrongn(perm, st, ed )) if (perm[st] - 1 == perm[perm[st] - 1] || perm[ed] + 1 == perm[perm[ed] + 1]) return 0;//不拆分连续数字 */ if (act--) { temp[0] = temp[n + 1] = 0; for (st = 1; st <= n; st++) for (ed = st + 1; ed <= n + 1; ed++) { for (k = 1; k <= n + 1; k++) { if (k > ed) { j = 1; for (i = 1; i < st; i++) temp[j++] = perm[i]; for (i = ed; i<k; i++) temp[j++] = perm[i]; for (i = st; i < ed; i++) temp[j++] = perm[i]; for (i = k; i <= n; i++) temp[j++] = perm[i]; } else if (k < st) { j = 1; for (i = 1; i < k; i++) temp[j++] = perm[i]; for (i = st; i < ed; i++) temp[j++] = perm[i]; for (i = k; i<st; i++) temp[j++] = perm[i]; for (i = ed; i <= n; i++) temp[j++] = perm[i]; } else continue; a = wrongn(temp, 1, n); if (!a) return true; if (a > h) continue; if (a > 3 * act) continue; if (dfs(a, act, temp)) { //cout << i << ' ' << i + j << "->" << k << endl; return true; } } } } return 0; } void solve(int T) { int i, j, k, h, ss; int perm[12]; perm[0]; for (i = 1; i <= n; i++) scanf("%d", &perm[i]); perm[0] = perm[n + 1] = 0; h = wrongn(perm, 1, n); if (!h) { printf("Case %d: 0\n", T); return; } for (maxd = 1; ; maxd++) { if (h > 3 * maxd) continue; if (dfs(h, maxd, perm)) { printf("Case %d: %d\n", T, maxd); return; } } } int main() { int T = 0; //clock_t start, stop; //start = clock(); while (scanf("%d", &n) == 1 && n) { solve(++T); } //stop = clock(); //printf("Use Time:%ld\n", (double)(stop - start)); return 0; } //system("pause"); /* 2 2 1 6 2 4 1 5 3 6 5 3 4 5 1 2 9 9 8 7 6 5 4 3 2 1 0 */
相关推荐
and a companion CD with all of the book's project files make learning a breeze as the Adobe Creative Team takes you on a self-paced tour of the image-editing powerhouse. This bestselling guide has ...
之前我发了数篇系列博文来仔细研究Poisson Image Editing算法,每次重新审视和深入,仿佛都能有更为深刻的认识和很大的收获。这应该算是我这个系列的完结篇,会用用Matlab代码一点一点的演示,原文作者到底是如何...
《iOS中的Photo Editing Extension开发详解》 在移动设备上,照片编辑已经成为日常操作的一部分,而iOS平台提供了强大的扩展机制,让开发者能够自定义照片编辑体验。"Photo Editing Extension Demo"是苹果官方提供...
This book is a new media mini-book covering concepts central to digital audio editing using the Audacity 2.1.1 open source software package which also apply to all of the professional audio editing ...
A unique compact book on digital video editing fundamentalsCovers digital video file formats and data footprint optimizationTeaches you how to build a production pipeline,解压密码 share.weimo.info
【标题】"Film Editing.zip" 是一个专门针对影视剪辑的教育资源,主要以PPT的形式呈现,适合初学者快速入门。这个压缩包包含了丰富的影视剪辑知识,通过精美的画面和配套的剪辑视频,让学习者能在较短的时间内(15-...
**波西米亚编辑器工具BI EDITING TOOLS详解** BI EDITING TOOLS是由波西米亚互动(Bohemia Interactive)开发的一款专业级游戏编辑工具,主要用于游戏模组制作、资源打包和3D模型创建。这个强大的工具集是专为那些...
Samsung Editing Assets2.2.82.5.apk
根据给出的文件信息,文件标题为“the craft of text editing”,描述是“the craft of text editing 一本电子书。放在这里收藏。”标签也是“the craft of text editing”,而【部分内容】中呈现的内容由于OCR技术...
标题“Chrome Office Editing”指的是在Google Chrome浏览器上编辑Microsoft Office文档的功能。这通常涉及到使用特定的Chrome插件或扩展程序,这些程序允许用户在浏览器环境中直接打开、编辑和保存Word、Excel、...
evil-cleverparens, editing语言的Evil正常状态 minor 正在进行中,工作 邪恶 cleverparensevil-cleverparens 为编辑Lisp而优化的模式编辑。 它的工作原理如下:如果有用的话,可以以防止将括号和它的他分隔符的顺序...
《Poisson Image Editing:艺术性对象插入的无缝融合技术》 在数字图像处理领域,Poisson Image Editing是一种先进的图像编辑技术,尤其在艺术性对象插入方面展现出强大的能力。这项技术的核心在于它能以一种几乎...
标题中的"success-128-switch-editing.zip_editing"暗示了这是一个关于编辑与修改的项目,可能涉及数字电路设计,特别是与128个开关有关的系统。描述提到"controlling D flipflop circuit",这直接指向了数字电子...
《BI_Editing_Tools_2_5_1:武装突袭3的游戏编辑利器》 在游戏开发和自定义内容创作领域,有一款名为BI_Editing_Tools_2_5_1的强大工具,它是针对军事模拟游戏《武装突袭3》的专业编辑套件。这款工具集成了丰富的...
MATLAB代码中的"Poison_Image_Editing"可能包含了这些步骤的实现,通过阅读和理解代码,可以学习如何利用MATLAB进行复杂的图像处理任务。此外,该代码可能还提供了参数调整,以适应不同的应用场景和用户需求。 总的...
在这个"core-editing.rar_editing"压缩包中,我们可以看到一个关于JSF的应用实例,特别关注了核心编辑功能,包括增、删、改、查以及分页操作。 首先,**增删改查(CRUD)**是任何数据库应用的基本操作。在JSF中,...
泊松图像编辑(Poisson Image Editing)是一种创新的图像处理技术,它利用基于求解泊松方程的通用插值机制,引入了一系列新颖工具,用于无缝编辑图像区域。此方法能够实现对选定区域的局部修改,无论是导入不透明或...