当前位置:网站首页>[蓝桥杯2017初赛]方格分割
[蓝桥杯2017初赛]方格分割
2022-07-06 09:14:00 【%xiao Q】
题目
分析
因为每种方案都是经过中间那个点(3,3),所以我们可以从(3,3)开始分2个方向 搜索(并且这2方向是对称的,所以当一个方向到边界,另一个也会到边界,也就是一种答案)
参考代码
#include <iostream>
#include <cstdio>
#include <vector>
#include <cstring>
#include <cmath>
#include <queue>
#include <stack>
#include <algorithm>
#include <unordered_map>
#define LL long long
#define rep(i, a, b) for(int i = a; i <= b; i++)
#define reps(i, a, b) for(int i = a; i < b; i++)
#define pre(i, a, b) for(int i = b; i >= a; i--)
using namespace std;
typedef pair<int, int> PII;
bool st[10][10] = {
0};
int dx[] = {
1, -1, 0, 0};
int dy[] = {
0, 0, 1, -1};
int ans = 0;
void dfs(int x, int y)
{
// 遇到边界就是一种方案
if(x == 0 || x == 6 || y == 0 || y == 6)
{
ans++;
return ;
}
rep(i, 0, 3)
{
int x1 = x + dx[i], y1 = y + dy[i];
int x2 = 6 - x1, y2 = 6 - y1; //(X1,y1)关于(3,3)对称的点
if(x1 < 0 || x1 > 6 || y1 < 0 || y1 > 6 || st[x1][y1]) continue;
st[x1][y1] = st[x2][y2] = true; //2个对称的点同是标记
dfs(x1, y1);
st[x1][y1] = st[x2][y2] = false; //回溯
}
}
int main()
{
st[3][3] = true;
dfs(3, 3);
cout << ans / 4 << endl; // 因为上下,左右都是对称的,所以除与4
return 0;
}
边栏推荐
- Windows cannot start the MySQL service (located on the local computer) error 1067 the process terminated unexpectedly
- Some notes of MySQL
- Antlr4 uses keywords as identifiers
- QT creator design user interface
- [Thesis Writing] how to write function description of jsp online examination system
- 【博主推荐】C#生成好看的二维码(附源码)
- PyCharm中无法调用numpy,报错ModuleNotFoundError: No module named ‘numpy‘
- windows下同时安装mysql5.5和mysql8.0
- Neo4j installation tutorial
- Punctual atom stm32f103zet6 download serial port pin
猜你喜欢
Image recognition - pyteseract TesseractNotFoundError: tesseract is not installed or it‘s not in your path
1. Mx6u learning notes (VII): bare metal development (4) -- master frequency and clock configuration
自动机器学习框架介绍与使用(flaml、h2o)
Use dapr to shorten software development cycle and improve production efficiency
Install mysql5.5 and mysql8.0 under windows at the same time
QT creator test
Knowledge Q & A based on Apache Jena
QT creator shape
Solve the problem of installing failed building wheel for pilot
[recommended by bloggers] background management system of SSM framework (with source code)
随机推荐
1. Mx6u learning notes (VII): bare metal development (4) -- master frequency and clock configuration
SSM整合笔记通俗易懂版
Mysql 其他主机无法连接本地数据库
Why can't I use the @test annotation after introducing JUnit
Error connecting to MySQL database: 2059 - authentication plugin 'caching_ sha2_ The solution of 'password'
[recommended by bloggers] asp Net WebService background data API JSON (with source code)
Punctual atom stm32f103zet6 download serial port pin
记一次某公司面试题:合并有序数组
Django running error: error loading mysqldb module solution
01项目需求分析 (点餐系统)
[Thesis Writing] how to write function description of jsp online examination system
Data dictionary in C #
Did you forget to register or load this tag 报错解决方法
Windows下安装MongDB教程、Redis教程
[download app for free]ineukernel OCR image data recognition and acquisition principle and product application
Ansible实战系列三 _ task常用命令
Database advanced learning notes -- SQL statement
Picture coloring project - deoldify
[recommended by bloggers] background management system of SSM framework (with source code)
@Controller, @service, @repository, @component differences