首页 > 其他分享 >CodeForces Gym 102900B Mine Sweeper II

CodeForces Gym 102900B Mine Sweeper II

时间:2023-07-12 09:04:11浏览次数:57  
标签:Sweeper int Gym typedef long Mine maxn define

CF 传送门

感觉像脑筋急转弯。

考虑所有数字之和就是相邻的 \((\text{雷}, \text{空地})\) 对数,因此翻转后这个对数不会改变。

然后由于抽屉原理,\(b \to a\) 和 \(b \to \operatorname{inv}(a)\) 中至少有一个操作次数 \(\le \left\lfloor\frac{nm}{2}\right\rfloor\),然后就做完了。

code
// Problem: B. Mine Sweeper II
// Contest: Codeforces - 2020 ICPC Shanghai Site
// URL: https://codeforces.com/gym/102900/problem/B
// Memory Limit: 1024 MB
// Time Limit: 1000 ms
// 
// Powered by CP Editor (https://cpeditor.org)

#include <bits/stdc++.h>
#define pb emplace_back
#define fst first
#define scd second
#define mems(a, x) memset((a), (x), sizeof(a))

using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef double db;
typedef long double ldb;
typedef pair<ll, ll> pii;

const int maxn = 1010;

int n, m;
char a[maxn][maxn], b[maxn][maxn], c[maxn][maxn];

void solve() {
	scanf("%d%d", &n, &m);
	for (int i = 1; i <= n; ++i) {
		scanf("%s", a[i] + 1);
		for (int j = 1; j <= m; ++j) {
			c[i][j] = (a[i][j] == 'X' ? '.' : 'X');
		}
	}
	for (int i = 1; i <= n; ++i) {
		scanf("%s", b[i] + 1);
	}
	int cnt = 0;
	for (int i = 1; i <= n; ++i) {
		for (int j = 1; j <= m; ++j) {
			cnt += (a[i][j] != b[i][j]);
		}
	}
	if (cnt <= n * m / 2) {
		for (int i = 1; i <= n; ++i) {
			printf("%s\n", a[i] + 1);
		}
	} else {
		for (int i = 1; i <= n; ++i) {
			printf("%s\n", c[i] + 1);
		}
	}
}

int main() {
	int T = 1;
	// scanf("%d", &T);
	while (T--) {
		solve();
	}
	return 0;
}

标签:Sweeper,int,Gym,typedef,long,Mine,maxn,define
From: https://www.cnblogs.com/zltzlt-blog/p/17546535.html

相关文章

  • gym 102994M Travel Dream 题解
    给定带权无向图,求最大\(k\)元环。\(n,m\leq300,3\leqk\leq10\),无重边。把\(k=3\)判掉,可以\(O(m^2)\)轻松解决。把\(k\)元环拆成长度为\(\dfrac{k}{2}-1\)的链\(+\)长度\(k-\dfrac{k}{2}-1\)的链\(+\)连接两条链的两条边。(长度指边的个数)问题:两条链需要无......
  • gym101573I Favorite Points
    gym101573IFavoritePoints纪念一下。#include<bits/stdc++.h>#defineLLlonglong#definePLLpair<LL,LL>#defineMPmake_pair#defineEBemplace_back#defineall(x)x.begin(),x.end()usingnamespacestd;template<typenameT>voidchkmn(T......
  • CF Gym 102994 Travel Dream
    题意求一张带权无向图中最大的\(k\)元简单环,无解输出impossible。\(1\len,m\le300,k\le10\)。注意\(k\)的范围题解\(k\)很小,存在简单办法对小环小链进行预处理,考虑折半。首先考虑怎么求长度小于等于4的链。长度为\(1,2\)的链可以直接枚举,长度为\(3\)的链......
  • gdb.exe: warning: Couldn't determine a path for the index cache directory.
    GDB调试中出现的警告D:\\gitee\\luatos-soc-2022\\out\\example_copy>arm-none-eabi-gdbexample.elfC:\\SysGCC\\bin\\arm-none-eabi-gdb.exe:warning:**Couldn'tdetermineapathfortheindexcachedirectory.......
  • 1.startRedmineMySQL
    #!/bin/bashdockerstopredmineMySQLdockerrm-fredmineMySQLdockerrun--privileged=true\ -idt\ -p3307:3306\ --nameredmineMySQL\ --restart=always\ -v/home/mysql/data:/var/lib/mysql\ -v/home/mysql/conf/my.cnf:/etc/mysql/......
  • 2.startRedmine.sh
    #!/bin/bashdockerstopredminedockerrmredminedockerrun-idt\ --restart=always\ --name=redmine\ --link=redmineMySQL:mysql\ --env='MYSQL_DATABASE=redmine_production'\ --env='MYSQL_USER=redmin'\ --env='MYSQL_PASS=QWER......
  • Redmine 中,如何新增一个字段名,比如"模块名称":
    why:用于编写测试报告时能够直接根据模块名称进行统计,不对excel表格进行自定义拆分-----规范性登录到Redmine平台,并进入你的项目页面。在项目页面上方的导航栏中,点击"设置"或类似的选项。在设置页面中,找到并点击"问题"或"问题跟踪"相关的设置选项。在问题设置页面中......
  • 探索Oracle之LogMiner 最佳实践一
    探索Oracle之LogMiner最佳实践一作者:吴伟龙PrudentWoo示例:    这是一个LogMiner示例配置。在这个图中,位于波士顿的源数据库生成重做日志文件,这些文件被归档并发送到旧金山的数据库。已将LogMiner字典提取到这些重做日志文件中。LogMiner将实际分析重做日志文件的挖掘数据库......
  • 强化学习从基础到进阶-常见问题和面试必知必答[1]:强化学习概述、序列决策、动作空间
    强化学习从基础到进阶-常见问题和面试必知必答[1]:强化学习概述、序列决策、动作空间定义、策略价值函数、探索与利用、Gym强化学习实验1.强化学习核心概念强化学习(reinforcementlearning,RL):智能体可以在与复杂且不确定的环境进行交互时,尝试使所获得的奖励最大化的算法。动......
  • 执行存储过程报错:User does not have access to metadata required to determine stor
    在执行存储过程中,报错详细信息如下:java.sql.SQLException:Userdoesnothaveaccesstometadatarequiredtodeterminestoredprocedureparametertypes.Ifrightscannotbegranted,configureconnectionwith"noAccessToProcedureBodies=true"tohavedrivergener......