格子游戏 解题报告
格子游戏 解题报告
【解题思路】
这道题让我学会了用结构体实现二维的并查集。其实也并不是很难,在每一次比较的时候只需要把x和y都比较一下就可以了;
每一次划线,先判断一下,如果起点在集合里,终点也在集合里,那么符合条件,输出当时的步数就可以了;如果不符合上面的条件,把点入集合;如果到最后还没有符合条件的情况,输出draw就可以了。
【代码】
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
struct hp{int x,y;
}n1,n2,f[250][250];
int n,m,i,p,q,j;
char t;hp find(hp k)
{if (k.x==f[k.x][k.y].x&&k.y==f[k.x][k.y].y) return k;f[k.x][k.y]=find(f[k.x][k.y]);return f[k.x][k.y];
}int main()
{freopen("game.in","r",stdin);freopen("game.out","w",stdout);cin>>n>>m;for (i=1;i<=n;++i)for (j=1;j<=n;++j){f[i][j].x=i;f[i][j].y=j;}for (i=1;i<=m;++i){scanf("%d%d",&p,&q);cin>>t;if (t=='D'){n1=find(f[p][q]);n2=find(f[p+1][q]);}if (t=='R'){n1=find(f[p][q]);n2=find(f[p][q+1]);}if (n1.x==n2.x&&n1.y==n2.y){printf("%d",i);return 0;}elsef[n1.x][n1.y]=n2;}printf("draw");return 0;
}
格子游戏 解题报告相关推荐
- 纵横填字游戏解题报告
题意描述: [问题描述] 这个题目要求你编写一个程序来解决一个纵横填字游戏. 这个游戏比我们在报纸上见到的通常的填字游戏要简单.游戏仅给出单词的起始位置,方面(横向或纵向)以及单词的长度.只要单词的长 ...
- 洛谷 P1129 [ZJOI2007]矩阵游戏 解题报告
P1129 [ZJOI2007]矩阵游戏 题目描述 小\(Q\)是一个非常聪明的孩子,除了国际象棋,他还很喜欢玩一个电脑益智游戏――矩阵游戏.矩阵游戏在一个\(N*N\)黑白方阵进行(如同国际象棋一般 ...
- OPJ-1067 取石子游戏 解题报告(数论) 取石子游戏,betty定理
连接--A - 取石子游戏 Time Limit:1000MS Memory Limit:10000KB 64bit IO Format:%I64d & %I64u Descrip ...
- [LeetCode解题报告] LCP 49. 环形闯关游戏
[LeetCode解题报告] LCP 49. 环形闯关游戏 一. 题目 1. 题目描述 2. 原题链接 二. 解题报告 1. 思路分析 2. 复杂度分析 3. 代码实现 三. 本题小结 四. 参考链接 ...
- noip2010乌龟棋解题报告
乌龟棋解题报告 题目描述 Description 小明过生日的时候,爸爸送给他一副乌龟棋当作礼物. 乌龟棋的棋盘是一行N个格子,每个格子上一个分数(非负整数).棋盘第1格是唯一 的起点,第N格是终点, ...
- [zz][ZOJ Monthly]October 2008解题报告
Connect4 Connect Four(Author: SONG, Yu[EZdestroyer]) 题目的背景就是Linux下的同名游戏,两个人在7*7的槽里轮流扔棋子,每次棋子都扔进某一列,棋 ...
- NJU 2021 计算机拔尖(数学)测试 解题报告
NJU 2021 计算机拔尖(数学)测试 解题报告 试题链接, 万分感谢 Fiddie 大佬提供试题!!! 因为要准备 2022 计算机拔尖所以稍微写了一下,感觉难度很大. 1 题目 设自然数 n&g ...
- 2015 CQU 重庆大学程序设计竞赛 解题报告
前言 儿童节快乐~~ 啊对了首先想带标程回家看的可以来这里:教主大大标程包 /我的现场赛代码 在校赛这样三人组队两台电脑的环境下,单挑的压力着实是十分之大--毕竟在同等条件下别人手速只要超过自己的一半 ...
- 快手2020校园招聘秋招笔试--算法C试卷 练习 解题报告 Apare_xzc
快手2020校园招聘秋招笔试–算法C试卷 解题报告 Apare_xzc 2020/4/10 网页链接:牛客链接 题型分布: 选择题(2分/道*20道) 编程题(15分/道*4道) 选择 ...
最新文章
- NanoPi NEO Air使用十五:使用V4L2驱动USB摄像头
- 制作网站设计项目进度表让用户充分了解网站制作进程
- 计算机辅助园林设计ps,计算机辅助园林设计III
- redis集群部署一直卡在Waiting for the cluster to join ......
- JQuery 总结(1) 选择器的使用
- Django设置TIME_ZONE和LANGUAGE_CODE为中国区域
- mapgis转arcgis数据后发现属性表内没有数据
- GIT文件的三种状态
- 文件服务器 之 VSFTPD的高手篇
- 安装svn显示目标计算机积极拒绝_【SVN】Error running context: 由于目标计算机积极拒绝,无法连接...
- getTickCount()函数 区别GetTickCount()函数
- uefi legacy linux知乎,【U盘工具】制作纯净万能“便携系统+pe维护”双系统U盘——UEFI与Legacy双启动...
- win下hadoop配置环境后cmd中报错
- 虚拟拨号服务器怎么用,windows实现虚拟拨号服务器
- 面试现场:小伙伴美团一面的分享和分析[含答案]
- Flask框架(一)flak视图和URL
- [RK3288][Android6.0] 调试笔记 --- CPU使用的频率表
- VS Code修改系统界面和编辑面板字体大小
- Java小白入门200例98之Java异常
- 022 Rust死灵书之污染
热门文章
- C++stringstream的妙用
- Android(java)学习笔记192:ContentProvider使用之虚拟短信
- MySQL语句练习50题
- node实现文件分片上传之multer篇
- chrome应用开发API之chrome.fileSystem
- 乐影音下载器(视频下载器) 官方主页
- 原生input标签实现ajax单文件上传和多文件上传
- 虎头钳的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
- 计算机word的关闭怎么办,电脑自动关机,WORD文档没保存怎么办?
- 简单记录 html2canvas网页中的图片无法显示的问题