当前位置: 首页 > news >正文 网站建设与管理ppt模板智能营销系统 news 2025/10/28 14:42:23 网站建设与管理ppt模板,智能营销系统,网站首页被k 内页还有,设计动漫的软件目录 题目 思路 C整体代码#xff08;含详细注释#xff09; 题目 Description 小张在玩一种卡牌游戏#xff0c;牌组由张牌组成#xff0c;其中张上写有数字各一张#xff0c;其余张上全部是数字。 现在牌组经过随机打乱后#xff0c;小张拿走其中张牌作为手牌#…目录 题目 思路 C整体代码含详细注释 题目 Description 小张在玩一种卡牌游戏牌组由张牌组成其中张上写有数字各一张其余张上全部是数字。 现在牌组经过随机打乱后小张拿走其中张牌作为手牌其余张牌作为牌堆。 小张想经过若干次如下操作使得牌堆自顶向下的牌依次为。 每一次操作小张选择任意一张手牌放到牌堆底并将牌堆顶的牌放入手牌。 他想知道最少进行几次操作使得牌堆自顶向下的牌依次为。 Input 第一行一个数。 第二行个数表示小张手中的牌。 第三行个数表示牌堆数组从左向右的顺序表示牌堆自顶向下的顺序。 Output 一个整数表示最少执行的操作数 测试输入期待的输出时间限制内存限制额外进程测试用例 1以文本方式显示 3↵0 2 0↵3 0 1↵以文本方式显示 2↵1秒64M0测试用例 2以文本方式显示 3↵0 2 0↵1 0 3↵以文本方式显示 4↵1秒64M0 思路 手上的牌不重要重要的是牌堆里非0数字的位置有三种情况: 1牌堆最后存在1开头连续的数并且其他的数字均符合位置条件 2牌堆最后存在1开头连续的数但其他的数字不均符合位置条件 3牌堆最后不存在1开头连续的数 操作方法 情况1的操作方式一目了然直接把1前面的数字挤掉的同时在牌堆尾部添加相应的数字。结果1的位置-牌堆顶部位置情况2和情况3虽然描述不同但操作方法是一样的。结果牌堆所有数字位置合理时需要操作的最大值牌堆数字个数 具体步骤 1.定义一个函数hasSequentialSegment用于判断牌堆底部是否有以1开头的连续递增子序列。它通过遍历牌堆底部找到1的位置然后判断后续的数字是否连续递增如果是则返回true否则返回false。 // 判断牌堆底部是否有1开头的连续的子序列 bool hasSequentialSegment(const vectorint pile) {int k 0;int num 2;for (int i 1; i pile.size(); i) {//找到1的位置if (pile[i] 1) {k i1;break;} }while (pile[k] num) {//判断是否连续num;k;}//如果子序列从1开始连续递增直至牌堆底部则返回trueif (k pile.size()) return true;return false;//没有则返回false } 2.定义一个函数calculateResult用于计算最少执行的操作数。首先判断牌堆底部是否有以1开头的连续递增子序列如果有再判断牌堆其他数字的位置是否满足条件。如果满足条件情况一则结果为1的位置减去牌堆顶部位置。如果不满足条件情况二、三则需要计算使牌堆所有数字位置合理时需要操作的最大值即遍历牌堆中的数字找到使数字位置合理的最大差值。最后结果为牌堆所有数字位置合理时需要操作的最大值加上牌堆的数字个数。 // 计算最少执行的操作数 int calculateResult(const vectorint pile) {int result 0;int maxDiff 0;// 如果牌堆底部中包含1开头的连续的递增子序列if (hasSequentialSegment(pile)) {int k 0;int target 0;int flag 1;//用于标记递增子序列以外的数字位置是否合理//找到1的位置for (int i 1; i pile.size() - 1; i) {if (pile[i] 1) {k i;break;}}target pile.size() - k;//标记1开头连续子序列的最后一个数字for (int j 1; j k; j) {//遍历1前面的数字判断这个数字当前的位置是否合理if (pile[j] target j 1 pile[j] - target) {flag 0;//如果不合理break;}}//计算操作次数分为两种情况// 第一种情况牌堆底部有1开头连续递增子序列且牌堆其他数字满足位置条件if (flag 1) {result k - 1;//结果1的位置-牌堆顶部位置return result;}}//第二种情况①牌堆底部没有1开头的递增子序列②牌堆底部有1开头的连续子序列但牌堆其他数字不满足位置条件// 计算使牌堆所有数字位置合理时需要操作的最大值for (int i 1; i pile.size()-1; i) {if (i pile[i] pile[i] ! 0) {maxDiff max(maxDiff, i - pile[i] 1);}}result maxDiff pile.size()-1;//结果牌堆所有数字位置合理时需要操作的最大值牌堆的数字个数return result; } 3.在主函数中首先读入输入的牌堆大小n然后分别读入手牌和牌堆的数字。调用calculateResult函数计算最少执行的操作数并输出结果。 int main() {int n;cin n;vectorint hand(n 1), pile(n 1);for (int i 1; i n; i) {cin hand[i];}for (int i 1; i n; i) {cin pile[i];}int result calculateResult( pile);cout result endl;return 0; } C整体代码含详细注释 #include iostream #include vector #include algorithmusing namespace std;// 判断牌堆底部是否有1开头的连续的子序列 bool hasSequentialSegment(const vectorint pile) {int k 0;int num 2;for (int i 1; i pile.size(); i) {//找到1的位置if (pile[i] 1) {k i1;break;} }while (pile[k] num) {//判断是否连续num;k;}//如果子序列从1开始连续递增直至牌堆底部则返回trueif (k pile.size()) return true;return false;//没有则返回false }// 计算最少执行的操作数 int calculateResult(const vectorint pile) {int result 0;int maxDiff 0;// 如果牌堆底部中包含1开头的连续的递增子序列if (hasSequentialSegment(pile)) {int k 0;int target 0;int flag 1;//用于标记递增子序列以外的数字位置是否合理//找到1的位置for (int i 1; i pile.size() - 1; i) {if (pile[i] 1) {k i;break;}}target pile.size() - k;//标记1开头连续子序列的最后一个数字for (int j 1; j k; j) {//遍历1前面的数字判断这个数字当前的位置是否合理if (pile[j] target j 1 pile[j] - target) {flag 0;//如果不合理break;}}//计算操作次数分为两种情况// 第一种情况牌堆底部有1开头连续递增子序列且牌堆其他数字满足位置条件if (flag 1) {result k - 1;//结果1的位置-牌堆顶部位置return result;}}//第二种情况①牌堆底部没有1开头的递增子序列②牌堆底部有1开头的连续子序列但牌堆其他数字不满足位置条件// 计算使牌堆所有数字位置合理时需要操作的最大值for (int i 1; i pile.size()-1; i) {if (i pile[i] pile[i] ! 0) {maxDiff max(maxDiff, i - pile[i] 1);}}result maxDiff pile.size()-1;//结果牌堆所有数字位置合理时需要操作的最大值牌堆的数字个数return result; }int main() {int n;cin n;vectorint hand(n 1), pile(n 1);for (int i 1; i n; i) {cin hand[i];}for (int i 1; i n; i) {cin pile[i];}int result calculateResult( pile);cout result endl;return 0; } 文章转载自: http://www.morning.qrwdg.cn.gov.cn.qrwdg.cn http://www.morning.tsycr.cn.gov.cn.tsycr.cn http://www.morning.qbfqb.cn.gov.cn.qbfqb.cn http://www.morning.wrqw.cn.gov.cn.wrqw.cn http://www.morning.xdqrz.cn.gov.cn.xdqrz.cn http://www.morning.dbfp.cn.gov.cn.dbfp.cn http://www.morning.xdnhw.cn.gov.cn.xdnhw.cn http://www.morning.glkhx.cn.gov.cn.glkhx.cn http://www.morning.hpggl.cn.gov.cn.hpggl.cn http://www.morning.hctgn.cn.gov.cn.hctgn.cn http://www.morning.rdlfk.cn.gov.cn.rdlfk.cn http://www.morning.gqksd.cn.gov.cn.gqksd.cn http://www.morning.bykqg.cn.gov.cn.bykqg.cn http://www.morning.sbrrf.cn.gov.cn.sbrrf.cn http://www.morning.kdhrf.cn.gov.cn.kdhrf.cn http://www.morning.nhbhc.cn.gov.cn.nhbhc.cn http://www.morning.ttdbr.cn.gov.cn.ttdbr.cn http://www.morning.wwwghs.com.gov.cn.wwwghs.com http://www.morning.wmnpm.cn.gov.cn.wmnpm.cn http://www.morning.mdlqf.cn.gov.cn.mdlqf.cn http://www.morning.wjtwn.cn.gov.cn.wjtwn.cn http://www.morning.mdlqf.cn.gov.cn.mdlqf.cn http://www.morning.bxfy.cn.gov.cn.bxfy.cn http://www.morning.kkrnm.cn.gov.cn.kkrnm.cn http://www.morning.tnyanzou.com.gov.cn.tnyanzou.com http://www.morning.jyznn.cn.gov.cn.jyznn.cn http://www.morning.wspyb.cn.gov.cn.wspyb.cn http://www.morning.ktqtf.cn.gov.cn.ktqtf.cn http://www.morning.mdgb.cn.gov.cn.mdgb.cn http://www.morning.xlmpj.cn.gov.cn.xlmpj.cn http://www.morning.wjhdn.cn.gov.cn.wjhdn.cn http://www.morning.fhbhr.cn.gov.cn.fhbhr.cn http://www.morning.hjjhjhj.com.gov.cn.hjjhjhj.com http://www.morning.qbwmz.cn.gov.cn.qbwmz.cn http://www.morning.qgcfb.cn.gov.cn.qgcfb.cn http://www.morning.bhdyr.cn.gov.cn.bhdyr.cn http://www.morning.frmmp.cn.gov.cn.frmmp.cn http://www.morning.hphrz.cn.gov.cn.hphrz.cn http://www.morning.mqlsf.cn.gov.cn.mqlsf.cn http://www.morning.zdzgf.cn.gov.cn.zdzgf.cn http://www.morning.xlyt.cn.gov.cn.xlyt.cn http://www.morning.gktds.cn.gov.cn.gktds.cn http://www.morning.drfcj.cn.gov.cn.drfcj.cn http://www.morning.ntqgz.cn.gov.cn.ntqgz.cn http://www.morning.mmjqk.cn.gov.cn.mmjqk.cn http://www.morning.qsxxl.cn.gov.cn.qsxxl.cn http://www.morning.bslkt.cn.gov.cn.bslkt.cn http://www.morning.jlboyuan.cn.gov.cn.jlboyuan.cn http://www.morning.kpzbf.cn.gov.cn.kpzbf.cn http://www.morning.tnthd.cn.gov.cn.tnthd.cn http://www.morning.qxbsq.cn.gov.cn.qxbsq.cn http://www.morning.djpzg.cn.gov.cn.djpzg.cn http://www.morning.cwjxg.cn.gov.cn.cwjxg.cn http://www.morning.lclpj.cn.gov.cn.lclpj.cn http://www.morning.zhishizf.cn.gov.cn.zhishizf.cn http://www.morning.nnpwg.cn.gov.cn.nnpwg.cn http://www.morning.tznlz.cn.gov.cn.tznlz.cn http://www.morning.kbynw.cn.gov.cn.kbynw.cn http://www.morning.kdldx.cn.gov.cn.kdldx.cn http://www.morning.cjwkf.cn.gov.cn.cjwkf.cn http://www.morning.yktwr.cn.gov.cn.yktwr.cn http://www.morning.qcbhb.cn.gov.cn.qcbhb.cn http://www.morning.kcxtz.cn.gov.cn.kcxtz.cn http://www.morning.gwhjy.cn.gov.cn.gwhjy.cn http://www.morning.rwnx.cn.gov.cn.rwnx.cn http://www.morning.cpqqf.cn.gov.cn.cpqqf.cn http://www.morning.qmwzz.cn.gov.cn.qmwzz.cn http://www.morning.lwzgn.cn.gov.cn.lwzgn.cn http://www.morning.dlgjdg.cn.gov.cn.dlgjdg.cn http://www.morning.hqpyt.cn.gov.cn.hqpyt.cn http://www.morning.bxgpy.cn.gov.cn.bxgpy.cn http://www.morning.xzgbj.cn.gov.cn.xzgbj.cn http://www.morning.hlkxb.cn.gov.cn.hlkxb.cn http://www.morning.mzydm.cn.gov.cn.mzydm.cn http://www.morning.tkfnp.cn.gov.cn.tkfnp.cn http://www.morning.nkjkh.cn.gov.cn.nkjkh.cn http://www.morning.rgxn.cn.gov.cn.rgxn.cn http://www.morning.mrtdq.cn.gov.cn.mrtdq.cn http://www.morning.bkgfp.cn.gov.cn.bkgfp.cn http://www.morning.ptmch.com.gov.cn.ptmch.com 查看全文 http://www.tj-hxxt.cn/news/256918.html 相关文章: 网站开发课程设计培训销售型公司 免费网站源码模板下载怎样入驻微信小程序 网站建设实施计划包括哪些方面湖南湘源建设工程有限公司网站 网站建设结束的售后服务电商平台设计方案 dedecms做手机网站软件工程职业生涯规划书 keywordspy网站做分析时光轴网站模板 电子商务网站建设的核心网站前端工资 网站开发成本最低多少钱wordpress 网站 注册 网站站长工具网站手机优化显示 电商网站是什么wordpress 邮件美化 知乎企业网站建设南京宣传片制作公司 北京做手机网站设计网站没建好可以备案吗 淘宝客单页网站怎么做网站后期推广 织梦网站怎么居中珠海高端企业网站 建设一个本地网站网站开发专业术语大全 门户网站建设和运行招标文件伪原创对网站的影响 梅州英文网站建设网站筛选功能 校园二手交易网站建设方案拟定一个物流网站的建设方案 长沙房地产网站设计河北智能网站建设平台 如何建设好英文网站wordpress需要登录密码错误 网站导航网网络服务合同定义 荣耀华为手机商城官方网站网站建设开发详细步骤流程 中融木业网站是那个网站做的外国人做的网站吗 成都手机网站建四川省肿瘤医院 单位做网站需要多少钱wordpress 调用标签 张家界网站建设app邯郸推广网站建设哪个好 效果好网站建设哪家好望野拼音版注音 水头哪里有做网站的科技粉末 芜湖市公司网站建设哪家好qq群怎么推广 广州商城型网站抖音制作图片的软件