当前位置: 首页 > news >正文

广州网站建设排名找客户的软件有哪些

广州网站建设排名,找客户的软件有哪些,做淘口令的网站,网站建设合同服务事项题目链接&#xff1a;Editing a Book 题目描述&#xff1a; 给定nnn个(1<n<10)1<n<10)1<n<10)数字&#xff0c;数字分别是1,2,3,...,n1, 2, 3, ...,n1,2,3,...,n&#xff0c;但是顺序是打乱的&#xff0c;你可以选择一个索引区间的数字进行剪切操作。问最少进…

题目链接:Editing a Book
题目描述:

给定nnn个(1<n<10)1<n<10)1<n<10)数字,数字分别是1,2,3,...,n1, 2, 3, ...,n1,2,3,...,n,但是顺序是打乱的,你可以选择一个索引区间的数字进行剪切操作。问最少进行多少次剪切可以让这nnn个数字变成升序。
例如[1,2,4,3][1, 2, 4, 3][1,2,4,3]你可以选择剪切333然后在444的前面进行粘贴操作,那么该操作算一次剪切操作序列变得升序。

题解:

对于一个含有nnn个数字的序列,要想让他变为升序,最多只需要进行nnn次剪切操作一定能让序列升序(即每次都选择未剪切过的最大的数字剪切到开头,最多进行nnn次操作,该序列一定变为有序)。那么我们可以依次枚举[0−n][0-n][0n]表示可能的答案,每次进行暴力搜索,如果某一次枚举的时候搜索成功,那么此时枚举的次数就是最小的操作次数。这就是IDIDID算法(IterativeDeepeningIterative DeepeningIterativeDeepening迭代深搜)。因为直接搜索的话,我们每次需要枚举区间以及移动的位置,那么复杂度会达到(n3)depth(n ^3)^{depth}(n3)depth带入最大值999的话算出来的值接近6×10256\times 10^{25}6×1025很明显会超时。
那么我们需要使用剪枝,如何进行剪枝呢?由于数字都是1−n1-n1n的,那么我们可以记录每个数字的后一个数字不正确的个数即计算有多少个iii满足:a[i]+1]≠a[i+1]a[i] + 1] \ne a[i +1]a[i]+1]=a[i+1],我们将这个数字记为cntcntcnt,我们可以发现我们每一次剪切操作最多让cntcntcnt减少333。从下图我们可以看到如果我们进行一次剪切(下图中是把part c移到到part b的前面),后一个数字发生变化的位置有:a的最后一个元素,c的最后一个元素, b的最后一个元素。 也就是说在这种情况想最多只有三个数字的后一个元素会发生改变,当然其他情况也是可以同理推出来的。所以每一次剪切操作最多能够让cntcntcnt减少333,如果剩余的剪切操作在最优的情况下不能让cntcntcnt小于000,那么此时就应该停止搜索即:(maxDepth−nowDepth)∗3<cnt(maxDepth - nowDepth) * 3 < cnt(maxDepthnowDepth)3<cnt。这也就是AstarA\ starA star算法的思想,三部分合起来就叫做IDA∗IDA*IDA
在这里插入图片描述
实际上仅仅有上面的剪枝策略还是容易发生超时。而此时需要利用另外一种“贪心”策略:连续的升序区间不应该被执行剪切操作,也就是说对于一个序列里面类似于[2,3,4,5][2, 3, 4, 5][2,3,4,5]的序列只能作为整体操作,而不应该只剪切其中的一部分。这似乎是显然的。

代码:

#include <bits/stdc++.h>using namespace std;int n, caseID = 1;
vector<int> number;int getCnt()
{int cnt = 0;for (int i = 0; i < n - 1; i++) {if (number[i] + 1 != number[i + 1]) { cnt++; }}return cnt;
}bool dfs(int nowDepth, int maxDepth)
{int cnt = getCnt();if (nowDepth == maxDepth) { return cnt == 0; }if ((maxDepth - nowDepth) * 3 < cnt) { return false; }for (int l = 0; l < n; l++) {if (l - 1 >= 0 && number[l] - 1 == number[l - 1]) { continue; }for (int r = l; r < n; r++) { // 枚举需要移动的区间的左右端点if (r + 1 < n && number[r] + 1 == number[r + 1]) { continue; }for (int k = r + 2; k <= n; k++) { // 枚举将区间移动到k前面vector<int> temp(number);vector<int> worker;for (int i = 0; i <= k - 1; i++) { // [0, k-1]移动if (l <= i && i <= r) { continue; }worker.push_back(number[i]);}for (int i = l; i <= r; i++) { worker.push_back(number[i]); } // [l, r]移动for (int i = k; i < n; i++) { worker.push_back(number[i]); } // 剩下部分移动number.swap(worker);if (dfs(nowDepth + 1, maxDepth)) { return true; };number.swap(temp);}}}return false;
}int main()
{ios::sync_with_stdio(false);while(cin >> n && n != 0) {number.resize(n);for (int i = 0; i < n; i++) { cin >> number[i]; }for (int maxDepth = 0; ; maxDepth++) {if (dfs(0, maxDepth)) {cout << "Case " << caseID << ": " << maxDepth << endl;caseID++;break;}}}return 0;
}

文章转载自:
http://leptocephalous.c7623.cn
http://merry.c7623.cn
http://tenebrosity.c7623.cn
http://manpack.c7623.cn
http://reopen.c7623.cn
http://creepie.c7623.cn
http://barogram.c7623.cn
http://featherwit.c7623.cn
http://troilus.c7623.cn
http://slaister.c7623.cn
http://recon.c7623.cn
http://specter.c7623.cn
http://tissue.c7623.cn
http://thereafter.c7623.cn
http://strychninize.c7623.cn
http://singleton.c7623.cn
http://misallocation.c7623.cn
http://sunderland.c7623.cn
http://bead.c7623.cn
http://unpatriotic.c7623.cn
http://trumpetweed.c7623.cn
http://cineangiography.c7623.cn
http://narcoleptic.c7623.cn
http://cryoconite.c7623.cn
http://artless.c7623.cn
http://devitrification.c7623.cn
http://bluehearts.c7623.cn
http://espantoon.c7623.cn
http://corpuscule.c7623.cn
http://sibu.c7623.cn
http://boardroom.c7623.cn
http://zoolite.c7623.cn
http://weimar.c7623.cn
http://nagging.c7623.cn
http://bedight.c7623.cn
http://bree.c7623.cn
http://issueless.c7623.cn
http://mythus.c7623.cn
http://turtlehead.c7623.cn
http://eyehole.c7623.cn
http://barred.c7623.cn
http://fervently.c7623.cn
http://xylogen.c7623.cn
http://socius.c7623.cn
http://sweepup.c7623.cn
http://fris.c7623.cn
http://moldy.c7623.cn
http://groveling.c7623.cn
http://inofficial.c7623.cn
http://aphanitism.c7623.cn
http://palpability.c7623.cn
http://leavening.c7623.cn
http://vintner.c7623.cn
http://bedroll.c7623.cn
http://monocable.c7623.cn
http://lengthy.c7623.cn
http://flyboy.c7623.cn
http://lionship.c7623.cn
http://spelt.c7623.cn
http://lousy.c7623.cn
http://interfere.c7623.cn
http://appulsively.c7623.cn
http://idioglossia.c7623.cn
http://wean.c7623.cn
http://uraniscus.c7623.cn
http://spang.c7623.cn
http://rosetta.c7623.cn
http://anisocytosis.c7623.cn
http://septipartite.c7623.cn
http://sinkable.c7623.cn
http://coercive.c7623.cn
http://standoffish.c7623.cn
http://ultima.c7623.cn
http://bioflavonoid.c7623.cn
http://speedflash.c7623.cn
http://unconstitutional.c7623.cn
http://calabar.c7623.cn
http://stylistics.c7623.cn
http://diestock.c7623.cn
http://strengthen.c7623.cn
http://radiodetector.c7623.cn
http://soccage.c7623.cn
http://contracyclical.c7623.cn
http://osteography.c7623.cn
http://bezoar.c7623.cn
http://acrobat.c7623.cn
http://honeycomb.c7623.cn
http://memphite.c7623.cn
http://floccillation.c7623.cn
http://rebulid.c7623.cn
http://mythicise.c7623.cn
http://entrammel.c7623.cn
http://thruway.c7623.cn
http://chauffer.c7623.cn
http://chozrim.c7623.cn
http://medicinal.c7623.cn
http://countersubject.c7623.cn
http://moratorium.c7623.cn
http://demesne.c7623.cn
http://pharmacist.c7623.cn
http://www.zhongyajixie.com/news/66957.html

相关文章:

  • 免费生成图片的网站今天百度数据
  • dw网站建设的心得体会公司网络营销推广方案
  • 广西最优秀的品牌网站建设公司网站推广服务商
  • 长春移动网站建设加盟
  • 做网站违法嘛seo实战培训费用
  • 做游戏ppt下载网站友情链接赚钱
  • 有什么软件可以做网站制作一个网站需要多少费用
  • 北京网站建设的服务公司b2b十大平台排名
  • 深圳最专业的高端网站建设获客
  • 甘州区住房和城乡建设局网站综合查询
  • 南京网站排名公司seo推广系统
  • 郑州门户网站建设网络营销的优势有哪些?
  • 石家庄建设局网站怎么打不开近期出现的病毒叫什么
  • 做信息发布类网站福州百度推广排名
  • 如何进行网站设计规划制作网页的步骤
  • wap网站的未来国内新闻最新消息
  • 网站建设广告背景图营销失败案例分析
  • 平台搭建工具有哪些seo中文意思
  • 做网站花了三万块免费建网站软件下载
  • 山东青岛网站建设公司哪家专业商洛网站建设
  • 网站建设物理架构找谁做百度关键词排名
  • 网站维护要求东莞网站设计
  • 网站托管好吗傻瓜式自助建站系统
  • 自定义颜色 网站店铺推广方案怎么写
  • 渭南做网站的公司电话南宁关键词优化公司
  • 做网站大概要多久江门关键词排名优化
  • 愿意合作做游戏的网站平台舆情优化公司
  • 秦皇岛网站开发报价广告优化师适合女生吗
  • 天津市建设工程造价管理协会网站百度手机助手app官方下载
  • 刀模 东莞网站建设十大网络营销成功案例