剪邮票(dfs)

蓝桥杯16届第7题——剪邮票(bfs、dfs、控制变量) 剪邮票题目 2016年蓝桥杯剪邮票原题: 如【图1.jpg】, 有12张连在一起的12生肖的邮票。 现在你要从中剪下5张来,要求必须是连着的。 (仅仅连接一个角不算相连) 比如,【图2.jpg】,【图3.jpg】中,粉红色所示部分就是合格的剪取。 请你计算,一共有多少种不同的剪取方法。 请填写表示方案数目的整数。 题意:在3 * 4的表格中,选择连通的5张邮票,判断能有多少种不同选法。 难... 阅读详情

剪邮票


如【图1.jpg】, 有12张连在一起的12生肖的邮票。现在你要从中剪下5张来,要求必须是连着的。
(仅仅连接一个角不算相连)
比如,【图2.jpg】,【图3.jpg】中,粉红色所示部分就是合格的剪取。

请你计算,一共有多少种不同的剪取方法。
请填写表示方案数目的整数。注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。

答案: (19分)


code:

//LQ(5)剪邮票
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int mp[12] = {1,2,3,4,6,7,8,9,11,12,13,14};
int aa[5],vis[5],sum = 0;
int dir[4] = {-1,1,-5,5};

void dfs(int n){
    for(int i = 0; i < 4; i++){
        int t = aa[n] + dir[i];
        if(t < 1 || t > 14 || t == 5 || t == 10) continue;
        for(int j = 0; j < 5; j++){
            if(!vis[j] && aa[j] == t){
                vis[j] = 1;
                dfs(j);
            }
        }
    }
}

int main(){
    for(int a = 0; a < 12; a++){
        for(int b = a+1; b < 12; b++){
            for(int c = b+1; c < 12; c++){
                for(int d = c+1; d < 12; d++){
                    for(int e = d+1; e < 12; e++){
                        aa[0] = mp[a];
                        aa[1] = mp[b];
                        aa[2] = mp[c];
                        aa[3] = mp[d];
                        aa[4] = mp[e];
                        memset(vis,0,sizeof(vis));
                        vis[0] = 1;
                        dfs(0);
                        int flag = 1;
                        for(int i = 0; i < 5; i++){
                            if(vis[i] != 1){
                                flag = 0;
                                break;
                            }
                        }
                        if(!flag) continue;
                        else sum++;
                    }
                }
            }
        }
    }
    cout << sum << endl;
    return 0;
}
//116

蓝桥杯 剪邮票DFS 剪邮票 如【图1.jpg】, 有12张连在一起的12生肖的邮票。 现在你要从中剪下5张来,要求必须是连着的。 (仅仅连接一个角不算相连) 比如,【图2.jpg】,【图3.jpg】中,粉红色所示部分就是合格的剪取。 请你计算,一共有多少种不同的剪取方法。 请填写表示方案数目的整数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 阅读详情

相关推荐

蓝桥杯算法实战:DFS解剪邮票问题全解析

本文详细解析了蓝桥杯算法竞赛中的剪邮票问题,通过DFS算法和排列组合优化,高效解决二维矩阵连通性检测难题。文章提供了从基础实现到性能优化的完整代码示例,并分享了竞赛中的实用调试技巧和测试用例,帮助算法竞赛选手快速掌握这一经典问题的解法。

weixin_29268267的博客 199

蓝桥历届试题-剪邮票 dfs

剪邮票 如【图1.jpg】, 有12张连在一起的12生肖的邮票。 现在你要从中剪下5张来,要求必须是连着的。 (仅仅连接一个角不算相连) 比如,【图2.jpg】,【图3.jpg】中,粉红色所示部分就是合格的剪取。 请你计算,一共有多少种不同的剪取方法。 请填写表示方案数目的整数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 Code: #i

Dave_lzw的博客 772

从剪邮票问题看连通性检测:新手也能懂的DFS可视化教学

本文以蓝桥杯经典问题“剪邮票”为例,通过可视化方式讲解深度优先搜索(DFS)在网格连通性检测中的应用。文章将生活化问题转化为算法模型,详细拆解了从组合枚举到DFS“染色”判断连通性的完整步骤,并提供了可运行的代码示例,帮助算法初学者直观理解DFS的核心思想与实现技巧。

weixin_28454475的博客 377

剪邮票(初学dfs者食用)

剪邮票 如【图1.jpg】, 有12张连在一起的12生肖的邮票。 现在你要从中剪下5张来,要求必须是连着的。 (仅仅连接一个角不算相连) 比如,【图2.jpg】,【图3.jpg】中,粉红色所示部分就是合格的剪取。 请你计算,一共有多少种不同的剪取方法。 请填写表示方案数目的整数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字 思路 想到了用dfs并且遍历起点,但是犯了两个错误,没有考虑到非线性的情况,dfs遍历不到,因为dfs只会向一个方向延申,另外的一个错误是,在遍历起点的主函数里

TomCruisePro的博客 990

TouchSocket TcpService:构建高性能Tcp服务的终极利器

/ 接收到的数据data");// 回复客户端await ((ITcpSessionClient)client).SendAsync("服务端已收到消息!");// 继续执行后续插件TouchSocket的TCPService以极简的API、强大的扩展性和卓越的性能,重新定义了.NET TCP服务的开发体验。无论是物联网平台还是金融级实时通信系统,TCPService均能提供可靠的基础设施支持。立即探索示例项目,开启你的高性能服务开发之旅!扩展阅读如何实现WebSocket服务?

若汝棋茗 的博客 1461

Isograph Reliability Workbench 14实战:从零构建故障树分析模型

本文以“马达不转”为例,手把手教你使用Isograph Reliability Workbench 14从零构建故障树分析模型。内容涵盖创建工程、定义顶事件、添加逻辑门与基础事件等核心步骤,并介绍了模型检查与定性定量分析,帮助你系统掌握这一强大的可靠性工程工具。

weixin_29309213的博客 356

2016年蓝桥杯--剪邮票--涉及数组映射,连通块检测,数组元素全排列

原题链接: 2016-第七届蓝桥杯大赛个人赛省赛(软件类)真题 C大学B组 - Marginalin - 博客园 (cnblogs.com)https://www.cnblogs.com/Marginalin/p/12609573.html#7.%E5%89%AA%E9%82%AE%E7%A5%A8代码: #include<iostream> using namespace std; int s[13] = {1,1,1,1,1,0,0,0,0,0,0,0}; int ans; int

shan1956的博客 176

RK3568 NFS rootfs配置与调试实战指南(已验证)

本文提供了在RK3568开发板上配置NFS rootfs的完整实战指南。通过详细步骤讲解如何配置uboot的bootargs参数、编译支持NFS的内核,并在PC端搭建TFTP与NFS服务器,最终实现从网络挂载根文件系统,从而极大提升驱动调试和应用程序开发的迭代效率。

weixin_29175469的博客 281

剪邮票(全排列+dfs判断连通性)

题目描述: 如【图1.jpg】, 有12张连在一起的12生肖的邮票。 现在你要从中剪下5张来,要求必须是连着的。 (仅仅连接一个角不算相连) 比如,【图2.jpg】,【图3.jpg】中,粉红色所示部分就是合格的剪取。   请你计算,一共有多少种不同的剪取方法。 请填写表示方案数目的整数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。   思路:用数组b...

点点滴滴 762

UE5网络同步优化:GetLifetimeReplicatedProps高级应用指南

本文深入探讨了UE5中GetLifetimeReplicatedProps函数的高级应用与优化策略。文章超越了基础变量注册,重点阐述了如何通过精细的复制条件控制、频率管理及分层复制机制,构建高效的数据同步通道,从而优化网络带宽与游戏性能,是提升多人游戏体验的实用指南。

weixin_29007243的博客 533

SAP开发实战:用FI_DOCUMENT_CHANGE BAPI批量修改FB03凭证抬头和行项目文本(附完整ABAP代码)

本文详细介绍了如何使用SAP的FI_DOCUMENT_CHANGE BAPI批量修改FB03凭证抬头和行项目文本,提供完整的ABAP代码实现方案。通过该BAPI,开发者可以高效完成财务凭证的批量修改,确保数据一致性和审计合规性,显著提升SAP财务模块的运维效率。

weixin_29224589的博客 379

2016蓝桥杯省赛C/C++B组7题剪邮票 DFS枚举组合情况BFS判联通

剪邮票 如【图1.jpg】, 有12张连在一起的12生肖的邮票。 现在你要从中剪下5张来,要求必须是连着的。 (仅仅连接一个角不算相连) 比如,【图2.jpg】,【图3.jpg】中,粉红色所示部分就是合格的剪取。 请你计算,一共有多少种不同的剪取方法。 请填写表示方案数目的整数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。

EventQueue的博客 6970

了解随机振动疲劳分析中 Ansys nCode DesignLife 的平均应力校正

通过选择静态环境,我们可以将其结果视为疲劳计算的平均应力,如图 3 所示,因此从静态偏移载荷工况中提取的平均应力用于转移预测雨流计数中所有循环的平均值。您可以通过观看下面的教学视频获得宝贵的见解,该视频将指导您完成利用 Ansys nCode DesignLife 分析平均应力对随机振动载荷下结构的影响的过程。它基于 R 比率或平均应力水平。另一方面,平均应力校正可以帮助消除平均应力的负面影响,提高结果的保真度。Ansys nCode 提供先进的平均应力校正技术,使工程师能够考虑平均应力对疲劳寿命的影响。

jkh920184196的博客 1518

蓝桥杯 剪邮票 DFS (不错的题目)

蓝桥杯 剪邮票 DFS (不错的题目) 剪邮票 如【图1.jpg】, 有12张连在一起的12生肖的邮票。现在你要从中剪下5张来,要求必须是连着的。(仅仅连接一个角不算相连)比如,【图2.jpg】,【图3.jpg】中,粉红色所示部分就是合格的剪取。 请你计算,一共有多少种不同的剪取方法。 #include <iostream...

豆子 335

STM32实战篇:使用USART发送/接收数据

在发送字符时也可以直接使用其对应的ASCLL码,例如: USART_SendData(USART1, 0x61);

qq_74114817的博客 596

数据结构(超详细讲解!!)第十七节 队列应用(杨辉三角)

杨辉三角

2201_76115387的博客 1375

(算法)DFS深度优先搜索—2016年蓝桥杯省赛java剪邮票

(算法)DFS深度优先搜索—2016年蓝桥杯省赛java剪邮票 2016年蓝桥杯剪邮票原题: 如【图1.jpg】, 有12张连在一起的12生肖的邮票。 现在你要从中剪下5张来,要求必须是连着的。 (仅仅连接一个角不算相连) 比如,【图2.jpg】,【图3.jpg】中,粉红色所示部分就是合格的剪取。 请你计算,一共有多少种不同的剪取方法。 请填写表示方案数目的整数。 注意:你提交的应...

Sirm23333 1万+

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

[蓝桥杯2016初赛]剪邮票

蓝桥杯题目:剪邮票 如下图, 有12张连在一起的12生肖的邮票。现在你要从中剪下5张来,要求必须是连着的。(仅仅连接一个角不算相连) 比如,下面两张图中,粉红色所示部分就是合格的剪取。 请你计算,一共有多少种不同的剪取方法。 本题可以用dfs解决,不过要注意细节 //剪邮票 #include<iostream> #include<algorithm> using namespace std; int sum=0; //可行方案的总数 int cnt=0; //记录已经剪了几

I_think_I_like 391

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

蓝桥杯---剪邮票---DFS的适用范围

剪邮票 【题意】 如【图1.jpg】, 有12张连在一起的12生肖的邮票。 现在你要从中剪下5张来,要求必须是连着的。 (仅仅连接一个角不算相连) 比如,【图2.jpg】,【图3.jpg】中,粉红色所示部分就是合格的剪取。 请你计算,一共有多少种不同的剪取方法。 请填写表示方案数目的整数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。

disparity_CJK的博客 755

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

蓝桥杯真题解析:如何用DFS+全排列解决剪邮票问题(附完整代码)

本文深入解析蓝桥杯竞赛中的剪邮票问题,通过DFS+全排列算法高效解决连通性检测与组合生成的复合题型。详细介绍了全排列生成的艺术、连通性检测的DFS实现及优化技巧,并附有完整代码和实战调试建议,帮助选手在竞赛中快速提升解题效率。

palm99的专栏 1041

16年真题 蓝桥杯 javaA 第七题 剪邮票

16年真题 蓝桥杯 javaA 第七题 剪邮票 剪邮票 如【图1.jpg】, 有12张连在一起的12生肖的邮票。 现在你要从中剪下5张来,要求必须是连着的。 (仅仅连接一个角不算相连) 比如,【图2.jpg】,【图3.jpg】中,粉红色所示部分就是合格的剪取。 请你计算,一共有多少种不同的剪取方法。 请填写表示方案数目的整数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 ...

WillXinlin的博客 417

蓝桥杯第七届真题 :剪邮票

点击查看:蓝桥杯历年真题 题解目录 剪邮票

Xiong-er 的博客 527

蓝桥杯真题 剪邮票 题解

题目: 如【图1.jpg】, 有12张连在一起的12生肖的邮票。 现在你要从中剪下5张来,要求必须是连着的。 (仅仅连接一个角不算相连) 比如,【图2.jpg】,【图3.jpg】中,粉红色所示部分就是合格的剪取。 正确答案在下面!! (错误答案大神们请无视….) Wrong Answer: 错因:这道题是不能边用dfs边判断, 比如图3的情况就不能考虑到:第2行第1...

不行不至 1817

2016第七届蓝桥杯--剪邮票(DFS)

第七题: 剪邮票 如【图1.jpg】, 有12张连在一起的12生肖的邮票。 现在你要从中剪下5张来,要求必须是连着的。 (仅仅连接一个角不算相连) 比如,【图2.jpg】,【图3.jpg】中,粉红色所示部分就是合格的剪取。 请你计算,一共有多少种不同的剪取方法。 请填写表示方案数目的整数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说

KeepTing 7817

第七届蓝桥杯 JavaA 剪邮票

第七届蓝桥杯 JavaA 剪邮票 剪邮票 如【图1.jpg】, 有12张连在一起的12生肖的邮票。 现在你要从中剪下5张来,要求必须是连着的。 (仅仅连接一个角不算相连) 比如,【图2.jpg】,【图3.jpg】中,粉红色所示部分就是合格的剪取。 请你计算,一共有多少种不同的剪取方法。 请填写表示方案数目的整数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 答案:116...

frontierq的博客 222

【DFS】蓝桥杯试题 剪邮票

题目描述 填空题 如【图1.jpg】, 有12张连在一起的12生肖的邮票。 现在你要从中剪下5张来,要求必须是连着的。 (仅仅连接一个角不算相连) 比如,【图2.jpg】,【图3.jpg】中,粉红色所示部分就是合格的剪取。 请你计算,一共有多少种不同的剪取方法。 请填写表示方案数目的整数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 思路: 如果用dfs直接搜的话,答...

行仔ovo的博客 491
上一篇: 方格填数
下一篇: 小明数(打表)
Guuuuuu老师儿
博客等级 码龄9年 259粉丝 718原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值