IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 数据结构与算法 -> 每天一道英文题,ICPC不自闭(2) -> 正文阅读

[数据结构与算法]每天一道英文题,ICPC不自闭(2)

Codeforces Round #766 (Div. 2) - A

题目翻译

有一个包含 n 行 m 列的网格,一些网格是黑色的,剩下的网格是白色的。

在一个操作中,你可以挑选一些黑网格并做下列其中一项:

  • 将其中一行都涂黑
  • 将其中一列都涂黑

给你两个整数 r 和 c。找到使第 r 行和第 c 列中的网格变为黑色所需的最小操作数,或确定这是不可能的。

输入

输入由多个测试用例组成。第一行包含一个整数 t(1≤t≤100)-测试用例的数量。测试用例的描述如下

每个测试用例的第一行包含四个整数n、m、r和c(1≤n,m≤50; 1≤r≤n;1≤c≤m) -网格中的行数和列数,以及需要分别变为黑色的网格的行数和列数。

随后是 n 行,每行包含 m 字符。这些字符中的每一个都是“B”或“W”-分别是黑色和白色的网格。

输出

对于每个测试用例,如果无法使 r 行和 c 列中的网格变为黑色,则输出 ?1。

否则,输出一个整数—使 r?行和 c 列中的网格变为黑色所需的最小操作数。

解题思路

其实这道题是个脑筋急转弯,读懂题就可以出思路了,只要有 B 就一定能涂黑最多是 2

如果在规定的行或列上就是 1

正好在规定的行列上就是 0

没有 B 就是 -1

代码示例

#include<iostream>
#include<cmath>
#include<cstdio>
using namespace std;

int t;
int n,m,x,y;
int l,r;
int a[101][101];
string s[101];

int main(){
	cin>>t;
	while(t--){
		cin>>n>>m>>x>>y;
		bool ok=0;
		bool cnt=0;
		int type=0;
		for(int i=1;i<=n;i++) cin>>s[i];
		for(int i=1;i<=n;i++){
			for(int j=0;j<m;j++){
				if(s[i][j]=='B'){
					if(x==i&&y==j+1){
						type=4;
					}
					if(x==i&&y!=j+1&&type!=4){
						type=3;
					}
					if(x!=i&&y==j+1&&type!=4){
						type=3;
					}
					if(x!=i&&y!=j+1&&type<3) type=2; 
				} 
			}
		}
		if(type==4) cout<<"0"<<endl;
		if(type==3) cout<<"1"<<endl;
		if(type==2) cout<<"2"<<endl;
		if(type==0) cout<<"-1"<<endl;
	}
}

  数据结构与算法 最新文章
【力扣106】 从中序与后续遍历序列构造二叉
leetcode 322 零钱兑换
哈希的应用:海量数据处理
动态规划|最短Hamilton路径
华为机试_HJ41 称砝码【中等】【menset】【
【C与数据结构】——寒假提高每日练习Day1
基础算法——堆排序
2023王道数据结构线性表--单链表课后习题部
LeetCode 之 反转链表的一部分
【题解】lintcode必刷50题<有效的括号序列
上一篇文章      下一篇文章      查看所有文章
加:2022-01-16 13:19:22  更:2022-01-16 13:21:15 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 19:33:56-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码