十一届蓝桥杯国赛 玩具蛇-dfs
【问题描述】
小蓝有一条玩具蛇,一共有 16 节,上面标着数字 1 至 16。每一节都是一
个正方形的形状。相邻的两节可以成直线或者成 90 度角。
小蓝还有一个 4 × 4 的方格盒子,用于存放玩具蛇,盒子的方格上依次标着
字母 A 到 P 共 16 个字母。
小蓝可以折叠自己的玩具蛇放到盒子里面。他发现,有很多种方案可以将
玩具蛇放进去。
请帮小蓝计算一下,总共有多少种不同的方案。如果两个方案中,存在玩
具蛇的某一节放在了盒子的不同格子里,则认为是不同的方案。
解题思路:
枚举每个点,然后求路径方案。
代码如下:
#include <iostream>
using namespace std;const int N = 5;
bool vis[N][N] = {false};
int dx[] = {0, 0, 1, -1}, dy[] = {1, -1, 0, 0};
long long ans;
void dfs(int x, int y, int u) {if (u == 16) {ans++;return ;}for (int i = 0; i < 4; i++) {int xx = x + dx[i], yy = y + dy[i];if (xx >= 1 && xx <= 4 && yy >= 1 && yy <= 4 && !vis[xx][yy]) {vis[xx][yy] = true;dfs(xx, yy, u + 1);vis[xx][yy] = false;}}
}int main() {for (int i = 1; i <= 4; i++)for (int j = 1; j <= 4; j++) {vis[i][j] = true;dfs(i, j, 1);vis[i][j] = false;}cout << ans << endl;return 0;
}
十一届蓝桥杯国赛 玩具蛇-dfs相关推荐
- 2020/第十一届蓝桥杯国赛/Java-A
试题A:和数个数 boolean isPrime(int n) {for (int i = 2; i <= Math.sqrt(n); i++) {if (n % i == 0) {return ...
- 2020十一届蓝桥杯国赛二等奖Java B组
大家觉得写还可以,可以点赞.收藏.关注一下吧! 也可以到我的个人博客参观一下,估计近几年都会一直更新!和我做个朋友吧!https://motongxue.cn 文章目录 参考博客https://blo ...
- 2020年第十一届蓝桥杯 - 国赛 - Python大学组 - H.答疑
题目链接 Ideas 2020年第十一届蓝桥杯 - 国赛 - Python大学组 - H.答疑 Code Python if __name__ == '__main__':n = int(input( ...
- 2020年第十一届蓝桥杯 - 国赛 - Java研究生组 - F.循环小数
2020年第十一届蓝桥杯 - 国赛 - Java研究生组 - F.循环小数 在线评测 Ideas 对于一个纯循环小数,假设循环节为l,则小数为0.llll-,转换为分数就是 l / (10 ** n ...
- 第十一届蓝桥杯国赛题目
以下是第十一届蓝桥杯国赛题目,供大家学习参考(提取码失效可以评论我) 百度云: 链接: https://pan.baidu.com/s/1g1o-px-RUVoXLLhRDS8cXQ 提取码: fgf ...
- 第十一届蓝桥杯国赛H题答疑
第十一届蓝桥杯国赛H题答疑 题目 [题目描述] [输入格式] [输出格式] [样例输入] [样例输出] [样例说明] [评测用例规模与约定] 分析(这篇水文的精髓) 代码 题目 万一图片加载不出来的话 ...
- 临时抱佛脚之第十一届蓝桥杯国赛B组部分题解(Part 1)
前言 酒可真是好东西啊,能让人一时间忘记不快的事. 但是一到明天就算不喜欢也还是会想起,而且比昨天更让人痛苦,想逃也逃不掉. --坂田银时 题目来源 蓝桥杯官网→学习资料→历届真题→竞赛→蓝桥杯真题 ...
- 2020第十一届蓝桥杯国赛JAVA B组真题解析(带源码及解析)
蓝桥杯历年真题及解析. 目录 蓝桥杯历年真题及解析. A: 美丽的 2 题目: 分析: AC代码: B: 扩散 题目: 分析: AC代码: C: 阶乘约数 题目: 分析: AC代码: D: 本质上升序 ...
- 2020第十一届蓝桥杯国赛Python组
A美丽的2 答案:563 res = 0 for i in range(1, 2021):if '2' in str(i):res += 1 print(res) # 563 B合数个数 模拟即可 答 ...
最新文章
- R语言可视化韦恩图实战:VENN DIAGRAM
- CISCO交换机如何删除 Vlan
- Guassdb T 在EulerOS系统安装说明
- oracle定时关闭job,Oracle 定时JOB
- StarGAN v2: Diverse Image Synthesis for Multiple Domains (多域多样性图像合成)
- java invocationtarget,Java异常处理之java.lang.reflect.InvocationTargetException
- M面试题-HTTPS和HTTP的区别
- python怎么画简单图-python中简单易学的绘图:用turtle画太极图
- java w3c解析xml乱码_下载xml 中文乱码
- 数组和集合的互相转换
- matlab TVdenoise,TV_Denoise TV全变分模型图像去噪
以及高斯模糊处理 2D Graphic 2D图形编程 272万源代码下载- www.pudn.com...
- sm3 算法java_“国密加密算法”SM系列的C#实现方法
- VOIP流中使用CNN-LSTM下对QIM的隐写分析方法
- CSDN学霸课表——把Word的默认背景颜色由白色改为绿色
- Mac 此账户尚未用于app store_iOS、Android 本周不能错过的 14 款新 App
- revit图纸导出dxf文件批量修改
- 【工大SCIR笔记】自然语言处理领域的数据增广方法
- ICC小Tips集锦
- vue+cesium汉化包
- 云游戏,玩什么比怎么玩更重要
热门文章
- 【错误异常大全】:ArcGIS version not specified. You must call RuntimeManager.Bind before creating any ArcGIS
- 从C#开始的面向对象编程经典自学教程
- C语言试题七十二之请编写函数判断三角形的类型,并输出其面积和类型。
- 剑指offer之用链表实现栈(带头节点)
- Android studio之编译出现 Error:null value in entry: outputDirectory=null
- C和指针之Eratosthenes-埃拉托斯特尼筛方法找质数
- Android之6.0 权限申请封装
- 查询工资最低的3名员工的职工工号、姓名和收入_普法课堂|你有多久没有收到工资条了?...
- tomcat出现5个using_当猫咪出现这5个迹象,主人就要给猫咪换猫粮了
- linux 编译指cpu内核,linux内核编译与配置