POJ 1321 棋盘问题(dfs)

【代码超详解】POJ 1321 棋盘问题(DFS,282 ms) 一、题目描述 棋盘问题 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 94188 Accepted: 43014 Description 在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可行... 阅读详情

解析:

简单的dfs,逐行深搜,用一个vis数组来标记当前列是否已经放置棋子,如果没有放置,且当前的格子为 ‘#’ 就放置棋子并跳到下一行,如果没有可放置的棋子,就直接跳到下一行。

AC代码

#include <cstdio>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <cstdlib>
using namespace std;
typedef long long ll;
const int INF = 0x3f3f3f3f;
const int N = 15;
char grid[N][N];
bool vis[N];
int n, k, ans;
void dfs(int row, int cur) {
    if(cur == k) {
        ans++;
        return ;
    }
    if(row >= n) return ;
    for(int j = 0; j < n; j++) {
        if(!vis[j] && grid[row][j] == '#') {
            vis[j] = true;
            dfs(row+1, cur+1);
            vis[j] = false;
        }
    }
    dfs(row+1, cur);
}
int main() {
    while(scanf("%d%d", &n, &k) != EOF) {
        if(n == -1 && k == -1) break;
        memset(grid, 0, sizeof(grid));
        memset(vis, 0, sizeof(vis));
        for(int i = 0; i < n; i++) {
            scanf("%s", grid[i]);
        }
        ans = 0;
        dfs(0, 0);
        printf("%d\n", ans);
    }
    return 0;
}
基于大疆TSDK与Pix4D的热红外数据工程化处理:从RJPG到温度正射影像的完整工作流 本文详细介绍了基于大疆TSDK与Pix4D的热红外数据工程化处理完整工作流。通过Python脚本自动化解析RJPG格式的热红外图像,提取并转换其中的原始辐射数据为包含真实温度信息的TIFF文件,再结合Pix4Dmapper进行批量拼接,最终生成可直接用于GIS分析的温度正射影像图。该流程解决了手动处理效率低下、参数校准复杂等难题,实现了从原始数据到定量分析成果的高效、准确、可重复生产。 阅读详情

相关推荐

华为OD机试真题 - 矩阵匹配 牛客网

2024华为OD机试真题,代码包含语言java、js、python、c 代码基本都有详细注释。 题目描述 从一个 N * M(N ≤ M)的矩阵中选出 N 个数,任意两个数字不能在同一行或同一列,求选出来的 N 个数中第 K 大的数字的最小值是多少。 输入描述 输入矩阵要求:1 ≤ K ≤ N ≤ M ≤ 150 输入格式: N M K N*M矩阵 输出描述 N*M 的矩阵中可以选出 M! / N! 种组合数组,每个组合数组种第 K 大的数中的最小值。无需考虑重复数字,直接取字典排序结果即可。

2301_76543445的博客 498

Poj1321—棋盘问题(DFS模板题)

Poj1321—棋盘问题(DFS模板题) 题目链接:https://vjudge.net/problem/POJ-1321 问题描述: Description 在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可行的摆放方案C。 Input ...

baobancha1923的博客 161

VMware Workstation Pro 16 安装 Ubuntu 20.04

VMware Workstation Pro 16 安装 ubuntu 20.04目录环境VMware Workstation下载Ubuntu 20.04下载安装过程 目录 环境 Windows 10 Workstation 16 Pro for Windows Ubuntu 20.04 LTS 64位 desktop版本 VMware Workstation下载 链接: https://www.vmware.com/products/workstation-pro/workstation-pro-eval

qq_45642410的博客 1万+

棋盘问题 POJ - 1321(dfs)

#include<iostream> #include<cstdio> #include<cstring> using namespace std; int n, k; const int maxn = 10; char chess[maxn][maxn]; int vis_y[maxn]; //判...

weixin_30417487的博客 129

SAP S4业务伙伴(BP)实战指南:从角色分配到数据同步的完整流程

本文详细解析了SAP S4业务伙伴(BP)功能,从基础概念到实战操作,涵盖角色分配、数据同步及常见问题排查。通过BP机制,企业可高效管理客户、供应商等多重身份,实现数据共享和动态切换,显著提升主数据管理效率。特别适合SAP实施顾问和ERP管理员参考。

y2z3a4b5c的博客 870

Minio HTTPS证书配置实战:从申请到部署全流程

本文详细介绍了Minio HTTPS证书配置的全流程,从申请到部署,确保对象存储服务的安全性。内容包括证书类型选择、文件处理、服务配置调整及常见问题解决,帮助用户在生产环境中快速实现HTTPS加密传输,提升数据安全。

weixin_42638178的博客 431

POJ1321-棋盘问题-(dfs)

http://poj.org/problem?id=1321 解题: dfs中,两种情况,某一行摆不摆?某一列摆不摆? #include<stdio.h> #include<iostream> #include<algorithm> #include<cstring> #include<math.h> #in...

dengpan1889的博客 123

【抖音】a_bogus参数逆向分析

点击——展开xxx条回复﹀就会出现。可以看到这个栈是有请求相关的数据的。所以就是在bdms.js里面生成的。

qq_44990881的博客 3000

[POJ 1321]棋盘问题 (DFS简单搜索)

中文题目:在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可行的摆放方案C。 INPUT: 输入含有多组测试数据。 每组数据的第一行是两个正整数,n k,用一个空格隔开,表示了将在一个n*n的矩阵内描述棋盘,以及摆放棋子的数目。 n <= 8 , k &...

孙煜晗的博客 867

TXS0104EPWR 4通道电平转换模块原理图设计,已量产

在嵌入式系统设计中,不同模块间的电平不兼容是常见问题 —— 比如 1.8V 的 MCU 与 3.3V 的传感器通信,或是 3.3V 的外设与 5V 的主控交互。这类场景下,一款高效、低功耗的双向电平转换器就成了关键组件。本文将结合实际原理图,深度解析 TI TXS0104 这款 4 通道双向电平转换器的设计要点与应用实践。

不脱发的程序猿 489

【图像超分】论文复现:Pytorch实现SRCNN!保姆级复现教程!提供完整代码和最优权重模型(x2、x3、x4)!科研级论文曲线图!计算平均PSNR和SSIM!代码Windows和Linux都可用!

由于很多同学反应没用过jupyter notebook,更习惯用pycharm项目的形式跑代码。于是,本文将用pycharm项目的形式,重新复现SRCNN!【图像超分】论文复现:新手入门!Pytorch实现SRCNN,数据预处理、模型训练、测试、评估全流程详解,注释详细,简单修改就可以训练你自己的图像数据,有训练好的模型下载地址,随取随用。

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 4703

POJ-1321棋盘问题(DFS)深度优先搜索

加油。 To be better. 棋盘问题 ## Descriptions: 在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可行的摆放方案C。 Input 输入含有多组测试数据。 每组数据的第一行是两个正整数,n k,用一个空格隔开,表示了将在一个n*n的矩阵...

A's World 864

【Python爬虫(90)】以Python爬虫为眼,洞察金融科技监管风云

本文聚焦爬虫技术在金融科技监管中的应用。开篇阐述金融科技发展带来监管挑战,引出爬虫技术的重要性。接着介绍金融科技监管政策与合规要求,包括政策法规体系、合规细则及政策变化应对。随后探讨爬虫技术选型、数据监测策略、风险指标抓取及案例实操。还阐述基于爬虫数据构建风险预警与防控机制,含模型构建、阈值设定等。最后总结爬虫技术应用成果,展望其与人工智能融合、适应新监管需求及重视数据安全的未来发展趋势。

邓邓子的博客 1063

[DFS]poj 1321 棋盘问题

poj 1321 棋盘问题 题意: 规定n*n大小的棋盘,给定棋子数目,求规定棋子数目的摆放方案 思路: 求方案数,dfs更合适吧 1、因为求方案数,注意回溯 2、题目一个坑……,“#”表示才棋盘区域,“.”才相当于墙壁 代码: #include #include #include #include #include #include #include //notic

soundwave_的博客 380

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

POJ 1321 棋盘问题(DFS)

题目链接:POJ 1321 棋盘问题 不知道怎么zhuangta

fobdddf的专栏 609

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

POJ 1321 棋盘问题(DFS回溯)

POJ 1321 棋盘问题(DFS回溯) http://poj.org/problem?id=1321 题意:要在n*n的不规则棋盘(棋盘上可能有不能放棋子的格子)上放k(k 分析: 类似于8皇后问题,可以同样的dfs回溯构造. 令cnt表示当前我们已经放了几个棋子了,且我们放棋子是从上往下放的(即从行号小的行放到行号大的行).这样我们就保证我们放棋子的时候行号不会重复. 接下来用vi

code 1074

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

棋盘问题 POJ - 1321(DFS)

棋盘问题 POJ - 1321 在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可行的摆放方案C。 Input 输入含有多组测试数据。 每组数据的第一行是两个正整数,n k,用一个空格隔开,表示了将在一个n*n的矩阵内描述棋盘,以及摆放棋...

codeswarrior的博客 358

POJ 1321-棋盘问题(DFS 递归)

POJ 1321-棋盘问题 K - DFS Time Limit:1000MSMemory Limit:10000KB64bit IO Format:%I64d & %I64u Description 在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个...

Dara2015的博客 204

poj dfs相关之1321 棋盘问题

poj dfs相关之1321 棋盘问题

ziqi9216的博客 297

POJ 1321 棋盘问题 (DFS)

POJ 1321 棋盘问题 (DFS) 先直接贴代码 #include<iostream> #include<cstring> #include<cstdio> using namespace std; char p[10][10]; bool vis[10]; int ans; int n, k; void dfs(...

weixin_30571465的博客 89

POJ 1321 棋盘问题 --- DFS

  POJ 1321   题目大意:给定一棋盘,在其棋盘区域放置棋子,需保证每行每列都只有一颗棋子。 (注意 .不可放 #可放)   解题思路:利用DFS,从第一行开始依次往下遍历,列是否已经放置棋子用一个数组标记,直至放完要求的棋子数。 /*POJ 1321 棋盘问题 --- DFS*/ #include <cstdio> #include <cstring&...

weixin_30527143的博客 119

POJ.1321 棋盘问题 (DFS)

POJ.1321 棋盘问题 (DFS)题意分析给出n*n的棋盘,棋盘中#表棋盘区域,即可以放置棋子。现在有k个棋子,放置在棋盘区域中,并且要求任意两个棋子不能放在棋盘的同一行或者同一列。求放置k个棋子的方案数有多少。如果要求不能放在同一行,那么在摆放的时候可以按行摆放。现在一行中找到能摆放的#的位置,然后放在这个位置上,dfs递归进入下一行,在下一行再找到合适的位置,如果剩余的棋子个数为0的时候,方

Pengwill's Blog 569

POJ 1321 -- 棋盘问题(DFS)

POJ 1321 -- 棋盘问题(DFS) 解题思路: DFS(程序中写成bfs完全手抖笔误... 只有棋盘区域'#'可以放棋子,如果棋盘区域的个数sumn与棋子数k相等,那么只有一种摆放方案... 如果sumn>k,则使用dfs进行搜索 设置状态数组bool square[10][10],若是'#'则为true,否则为false。 由于棋子都是一样的,摆放没有顺序之分。为了...

weixin_30252709的博客 140

poj 1321 棋盘问题 回溯 Java

poj 1321 棋盘问题 import java.util.Arrays; import java.util.Scanner; /** * @author wangshaoyu */ public class POJ1321棋盘问题 { static int n; static int k; static int ans; static boolean[] rows; // 用于标记这一行是否已经放过棋子了 static boolean[] cols; //

weixin_46621409的博客 393

poj1321棋盘问题

题目大意:输入n,k,n表示棋盘大小为n*n,接下来n行描述棋盘,#表示棋盘区域,'.'表示空白区域,棋盘区域才能放棋子,k表示要放置的棋子个数。 poj1321棋盘问题 #include #include #include using namespace std; char a[9][9]; int aa[10]; int k,countt,n; void dfs(int row,int

qq_30843195的博客 343

POJ-1321 棋盘问题(DFS+回溯)

POJ-1321 棋盘问题(DFS+回溯) 求在n*n的图中放m个的种类,简单DFS解决,注意条件任意的两个棋子不能放在棋盘中的同一行或者同一列,'#'是棋盘可以摆,'.'是空的不可以摆。

SaySomething 460
上一篇: POJ 2528 Mayor's posters(离散化 + 线段树)
下一篇: UVA 1450 Airport(二分+想法题)
HelloWorld10086
博客等级 码龄12年 88粉丝 614原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值