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

【CSP CCF记录】202305-1第30次认证 重复局面

题目

样例输入

8
********
******pk
*****r*p
p*pQ****
********
**b*B*PP
****qP**
**R***K*
********
******pk
*****r*p
p*pQ****
*b******
****B*PP
****qP**
**R***K*
********
******pk
*****r*p
p*p*****
*b**Q***
****B*PP
****qP**
**R***K*
******k*
******p*
*****r*p
p*p*****
*b**Q***
****B*PP
****qP**
**R***K*
******k*
******p*
*****r*p
p*pQ****
*b******
****B*PP
****qP**
**R***K*
********
******pk
*****r*p
p*pQ****
*b******
****B*PP
****qP**
**R***K*
********
******pk
*****r*p
p*p*****
*b**Q***
****B*PP
****qP**
**R***K*
********
******pk
******rp
p*p*****
*b**Q***
****B*PP
****qP**
**R***K*

样例输出

1
1
1
1
1
2
2
1

思路

这道题思路很简单,即看当前局面出现了几次。

可以设一个数据类型<string,int>的map容器,键为8x8的棋盘局面(即一个64个字符元素的字符串),值为出现次数。

每次输入一个8x8的棋盘后判断当前局面是否第一次出现,如是第一次则将当前局面加入map容器;如不是第一次,则修改当前键对应的数据值。

map的写法和用法可以参考我另一篇文章:【CSP CCF记录】备考知识点总结-CSDN博客

代码

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int n;
	map<string,int>m;
	cin>>n;
	
	for(int i=0;i<n;i++)
	{
		string chess;
		for(int j=0;j<8;j++)
		{
			string str;
			cin>>str;
			chess=chess+str;	
			
		}
		auto it = m.find(chess);  // 查找键为chess的元素
		int num=0;
	    if (it != m.end()) {
		num=m[chess]+1;
		m[chess]=num;
		cout<<num<<endl;
	    }else {
	    num=1;
		m[chess]=num;
		cout<<num<<endl;
	    }
	}
    return 0;
	
}

运行


http://www.kler.cn/a/420867.html

相关文章:

  • 在 MacOS 上为 LM Studio 更换镜像源
  • 蓝桥杯准备训练(lesson1,c++方向)
  • 在办公室环境中用HMD替代传统显示器的优势
  • 【人工智能-基础】SVM中的核函数到底是什么
  • python之Flask入门—路由参数
  • 用postgresql实现数组中的模糊字符串查询
  • 服务器如何划分空间?
  • 【IC验证】systemverilog_函数和任务
  • 杨辉三角形-多语言
  • 气象数据下载服务平台(二)
  • 超文本协议之HTML(泷羽sec)
  • Mysql读写分离分库分表
  • MySQL中的幻读问题
  • Linx下自动化之路:JDK1.8 安装包一键安装脚本实现离线极速部署
  • 高校数字化运营平台解决方案:构建统一的服务大厅、业务平台、办公平台,助力打造智慧校园
  • alpaca 和 sharegpt微调数据格式区别
  • 「Mac畅玩鸿蒙与硬件41」UI互动应用篇18 - 多滑块联动控制器
  • 汽车用聚芳醚砜行业全面而深入的分析
  • WPF从本地文件加载界面
  • Modbus rtu转profibusDP接电机保护器快速配置案例
  • 【代码随想录|贪心算法03】
  • 【Trick】adb指令运行时出现 Error: Activity class {xxx} does not exist.
  • 学习笔记048——Java字节流
  • Kotlin 协程的异常处理
  • 蓝象智联携手西电发布GaiaGPT,夯实数据安全底座
  • python(18) : flask_sqlalchemy 配置sqlserver数据库对象