当前位置: 首页 > news >正文

AcWing 1250. 格子游戏(并查集)

题目链接

活动 - AcWing本课程系统讲解常用算法与数据结构的应用方式与技巧。icon-default.png?t=N7T8https://www.acwing.com/problem/content/1252/

题解

当两个点已经是在同一个连通块中,再连一条边,就围成一个封闭的圈。一般用x * n + y的形式将(x, y)变成一维。

代码

#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>using namespace std;const int N = 40010;int n, m;
int p[N];int get(int x, int y)
{return x * n + y;
}int find(int x)
{if (p[x] != x) p[x] = find(p[x]);return p[x];
}int main()
{cin >> n >> m;for (int i = 0; i < n * n; i++) p[i] = i;int res = 0;for (int i = 1; i <= m; i++){int x, y;char d;cin >> x >> y >> d;x--, y--;int a = get(x, y);int b;if (d == 'D') b = get(x + 1, y);else b = get(x, y + 1);int pa = find(a), pb = find(b);if (pa == pb){res = i;break;}p[pa] = pb;}if (!res) puts("draw");else cout << res << endl;return 0;
}

参考资料

  1. AcWing算法提高课

相关文章:

  • HarmonyOS鸿蒙应用开发——数据持久化Preferences
  • mongodb之mongoTemplate基本操作
  • Java 基础学习(十二)文本I/O、日期与时间API
  • 搭建消息时光机:深入探究RabbitMQ_recent_history_exchange在Spring Boot中的应用【RabbitMQ实战 二】
  • Qt/C++视频监控安卓版/多通道显示视频画面/录像存储/视频播放安卓版/ffmpeg安卓
  • ToolLLM model 以及LangChain AutoGPT Xagent在调用外部工具Tools的表现对比浅析
  • 深度学习记录--矩阵维数
  • 塑料检查井配套开发了注塑成型的井盖、井筒、井座
  • 详细教程 - 从零开发 Vue 鸿蒙harmonyOS应用 第一节
  • 基础算法(1):排序(1):选择排序
  • 云原生之深入解析如何在Kubernetes中快速启用Cgroup V2支持
  • 【教学类-06-16】20231213 (按比例抽题+乱序or先加再减后乘)X-Y之间“加法减法乘法+-×混合题”
  • Yaml语法解析
  • CTF网络安全大赛是干什么的?发展史、赛制、赛程介绍,参赛需要学什么?
  • 10.RIP路由信息协议
  • $translatePartialLoader加载失败及解决方式
  • 〔开发系列〕一次关于小程序开发的深度总结
  • 002-读书笔记-JavaScript高级程序设计 在HTML中使用JavaScript
  • CentOS 7 修改主机名
  • cookie和session
  • Git初体验
  • in typeof instanceof ===这些运算符有什么作用
  • Java Agent 学习笔记
  • Java 多线程编程之:notify 和 wait 用法
  • JavaScript设计模式系列一:工厂模式
  • js操作时间(持续更新)
  • Linux中的硬链接与软链接
  • MYSQL如何对数据进行自动化升级--以如果某数据表存在并且某字段不存在时则执行更新操作为例...
  • node-sass 安装卡在 node scripts/install.js 解决办法
  • RxJS: 简单入门
  • session共享问题解决方案
  • Sublime Text 2/3 绑定Eclipse快捷键
  • underscore源码剖析之整体架构
  • 从零开始在ubuntu上搭建node开发环境
  • 发布国内首个无服务器容器服务,运维效率从未如此高效
  • 基于 Babel 的 npm 包最小化设置
  • 精益 React 学习指南 (Lean React)- 1.5 React 与 DOM
  • 快速体验 Sentinel 集群限流功能,只需简单几步
  • 前端之Sass/Scss实战笔记
  • 文本多行溢出显示...之最后一行不到行尾的解决
  • 小程序 setData 学问多
  • 一个SAP顾问在美国的这些年
  • 移动互联网+智能运营体系搭建=你家有金矿啊!
  • NLPIR智能语义技术让大数据挖掘更简单
  • ​​​​​​​​​​​​​​Γ函数
  • ​io --- 处理流的核心工具​
  • ​力扣解法汇总946-验证栈序列
  • !!Dom4j 学习笔记
  • # 计算机视觉入门
  • # 透过事物看本质的能力怎么培养?
  • #每日一题合集#牛客JZ23-JZ33
  • $.ajax,axios,fetch三种ajax请求的区别
  • $.ajax中的eval及dataType
  • (22)C#传智:复习,多态虚方法抽象类接口,静态类,String与StringBuilder,集合泛型List与Dictionary,文件类,结构与类的区别
  • (3)选择元素——(14)接触DOM元素(Accessing DOM elements)