算法学习之路|方格分割
6x6的方格,沿着格子的边线剪开成两部分。
要求这两部分的形状完全相同。
试计算:
包括这3种分法在内,一共有多少种不同的分割方法。
注意:旋转对称的属于同一种分割法。
请提交该整数,不要填写任何多余的内容或说明文字。
解题思路:
首先建立一个模型:即从(3,3)开始一刀切,有多少种切法
应用算法:深度遍历/回溯
小技巧:
切痕为1,没切的地方为0.
切过就无法再次切了,即遇到1回溯,遇到0就遍历。
当成蜗牛型环路的时候因为最后四个方向都是1,所以一直回溯到出环路,这个问题无需考虑.
//方格分割
//暴力破解
#include <iostream>
using namespace std;
void dfs(int line,int column);int times=0;
int map[7][7]={0};int main(){dfs(3,3);cout<<times/4<<endl;//因为一开始(3,3)从四个方向出发,从一个方向深搜的结果与其他方向是相同的,只不过角度不同罢了。return 0;
}void dfs(int line,int column){if(map[line][column]==1) return;//深度搜索的时候防止返回原路并且保持图片被一刀切两半map[6-line][6-column]=1;//对称型切法map[line][column]=1;//标记已经切开的路线if(line==0||column==0||column==6||line==6){//当与边界相撞的时候,即是一刀切开成功的时候times++;map[6-line][6-column]=0;map[line][column]=0;//回溯return ;}dfs(line-1,column);dfs(line,column-1);dfs(line+1,column);dfs(line,column+1);//各种情况map[6-line][6-column]=0;map[line][column]=0;//回溯
}
算法学习之路|方格分割相关推荐
- 拿下斯坦福和剑桥双offer,00后的算法学习之路
董文馨,00后,精通英语,西班牙语.斯坦福大学计算机系和剑桥大学双Offer,秋季将进入斯坦福大学学习. 10岁开始在国外上学:12岁学Scratch: 13岁学HTML & CSS: 14岁 ...
- 算法学习之路和程序员(技术)学习必读书籍
原文链接:http://lucida.me/blog/on-learning-algorithms/ 转 算法学习之路和程序员(技术)学习必读书籍 2015年05月26日 09:46:56 阅读数:1 ...
- 完全背包问题贪心算法c语言,数据结构与算法学习之路:背包问题的贪心算法和动态规划算法...
一.背包问题描述: 有N种物品和一个重量为M的背包,第i种物品的重量是w[i],价值是p[i].求解将哪些物品装入背包可使这些物品的费用总和不超过背包重量,且价值总和最大. 二.解决方法: 1.贪心算 ...
- 巩朋:我的算法学习之路
转自:http://blog.jobbole.com/67348/ 巩朋:我的算法学习之路 分享到: 232 MVC架构模式分析与设计 Linux Guide for Developers 网页广告特 ...
- 算法竞赛---day5(方格分割)
虽然最近的事情都不是太顺,但还是得抱着积极的心态来面对啊~ 题目: 6x6的方格,沿着格子的边线剪开成两部分.要求这两部分的形状完全相同.如图:p1.png, p2.png, p3.png 就是可行的 ...
- 1.1.10 从二分查找BinarySearch开启算法学习之路---《java算法第四版》
文章目录 0.前言 1.功能 2.示例 有两个名单tinyW.txt和tinyT.txt,将tinyT.txt名单中不在tinyW.txt的数据打印出来 ① 实现原理 ② 实现代码 ③ 性能分析 0. ...
- 算法学习之路|最小生成树——prime算法
摘要: 算法概述:对于一个带权的连通图,其顶点的集合 为V,边的集合为E.定义一个新的集合Vnew={空},第一步在图中任选一个顶点v加入Vnew,第二步寻找最短的边(u,v),其中u∈Vnew,v∈ ...
- 算法学习之路|最小生成树—kruskal
算法概述:一个带权的连通图, 有V个点,E个边,去掉所有的边,得到一个新图,将E个边按权值从小到大排列,然后从权值最小的边<u,v>开始加入,重复下去,但每次加入之前要判断u,v是否连通, ...
- 算法学习之路|打印排名
上机考试虽然有实时的Ranklist,但上面的排名只是根据完成的题数排序,没有考虑 每题的分值,所以并不是最后的排名.给定录取分线,请你写程序找出最后通过分数线的 考生,并将他们的成绩按降序打印. 输 ...
- 算法学习之路2 质数问题
前言 质数问题也算是入门的问题了,在CSDN竞赛第五期中,前2题也跟质数问题存在关系,看了大佬们的解答,我的解题方式算是暴力的了.只能达到启蒙的作用,要做好还是要多刷题. 概念法 质数又称素数.一个大 ...
最新文章
- C++类的案例(一)
- EZ430 Chronos 自带程序源码:test 示范程序
- 使用Navicat连接MySQL时出现2059报错的解决方法
- Java中给循环体起别名
- linux mpc boot 串口初始化,uboot移植阶段二--3串口终结篇
- c语言disp是什么意思及用法,disp(disp是什么功能)
- android获取wifi mac地址吗,Android获取当前WiFi的MAC地址-适配所有版本
- 525 Contiguous Array 连续数组
- SQLite 不能加密?
- 易筋SpringBoot 2.1 | 第三十六篇:Spring Boot RestTemplate超时配置示例
- ROC曲线及AUC值
- windows虚拟显示器开发(三)USB显示器
- QPSK、16QAM、64QAM信号的散点图、正交、同相分量波形图
- ricequant股东人数数据获取方式
- header元素的使用
- 幼儿园早期阅读活动的现状及问题研究
- 华为鲲鹏是芯片还是服务器,关于芯片:眼见为实华为鲲鹏架构服务器生态大揭秘...
- 写给父亲的语音计算器(语音的加载播放C#,四)
- 会声会影2018新功能分屏视频
- nyoj 304 节能 【区间dp】