lanqiao OJ 644 方格分割

简介: lanqiao OJ 644 方格分割

1.方格分割 - 蓝桥云课 (lanqiao.cn)

分割线一定会经过图的中心点,只要能确定半条到达边界的分割线,就能根据这条分割线对称画出另外一条分割线,因为结果是中心对称的,所以将搜索出来的个数除以4即可

注意:半条分割线不能同时经过中心对称的两个点 ;

#include<iostream>
#include<cstring>
#include<algorithm>
 
using namespace std ;
int d[4][2] = {{-1,0},{0,1} ,{1,0} , {0,-1}};
bool v[10][10] ;
int ans ;
void dfs(int x ,int y ){
    if(x == 0 || y == 0 || y == 6 || x == 6){//函数结束判断
        ans ++ ;return ;
    }
    for(int i = 0 ; i < 4 ; i ++){//四个走向进行搜索
        int tx = x + d[i][0] , ty = y + d[i][1] ;
        if(!v[tx][ty]){//未走过进入判断
            v[tx][ty] = 1 ;
            v[6-tx][6-ty] = 1;//不能经过中心对称的两个点
            dfs(tx,ty) ;
            v[6-tx][6-ty] = 0;
            v[tx][ty] = 0 ;
        }
        
    }
}
 
int main(){
    v[3][3] = 1 ;
    dfs(3,3) ;
    cout << ans / 4  << endl ;; 
}
目录
相关文章
|
6月前
|
算法
LeetCode算法题---最长回文子串、N 字形变换(四)
LeetCode算法题---最长回文子串、N 字形变换(四)
41 0
|
1月前
lanqiao OJ 689 四阶幻方
lanqiao OJ 689 四阶幻方
24 0
|
1月前
lanqiao OJ 664 方格填数
lanqiao OJ 664 方格填数
11 1
|
1月前
lanqiao OJ 803 方格取数
lanqiao OJ 803 方格取数
18 3
|
1月前
lanqiao OJ 3513 岛屿个数(2023省赛)
lanqiao OJ 3513 岛屿个数(2023省赛)
14 2
|
1月前
lanqiao OJ 239 最优包含
lanqiao OJ 239 最优包含
13 2
|
30天前
lanqiao OJ 1546 坐标搜寻
lanqiao OJ 1546 坐标搜寻
11 0
|
30天前
lanqiao OJ 246 矩阵计数
lanqiao OJ 246 矩阵计数
11 0
|
29天前
lanqiao oj 1628 最短循环节问题
lanqiao oj 1628 最短循环节问题
7 0
|
1月前
|
人工智能 Java BI
lanqiao OJ 111 区间位移
lanqiao OJ 111 区间位移
11 0