题意:

给出n*n*n的一个魔方,有m个操作,每次操作我们删除这个魔方的一行格子,问经过所有操作之后还剩多少个格子。

思路:

模拟,每次进行操作的时候,用pair<pair<>>标记被删除的格子,用set维护。

代码:

#include<cstdio>
#include<iostream>
#include<algorithm>
#include<cmath>
#include<cstdlib>
#include<vector>
#include<queue>
#include<map>
#include<stack>
#include<cstring>
#include<cstring>
#include<climits>
#include<sstream>
#include <set>using namespace std;
struct Node {char c1, c2;int a, b;
}node[1005];
typedef pair<pair<int, int>, int> PII;
set<PII> s;int main()
{int n, m;int t;scanf("%d",&t);while(t--) {scanf("%d %d",&n, &m);s.clear();for(int i = 1; i <= m; i++) {scanf("\n%c=%d,%c=%d", &node[i].c1,&node[i].a, &node[i].c2, &node[i].b);
//          printf("%c=%d,%c=%d\n", node[i].c1,node[i].a, node[i].c2, node[i].b);if(node[i].c1 == 'X' && node[i].c2 == 'Y') {for(int j = 1; j <= n; j++) {s.insert(make_pair(make_pair(node[i].a, node[i].b),j));}} else if(node[i].c1 == 'Y' && node[i].c2 == 'X') {for(int j = 1; j <= n; j++) {s.insert(make_pair(make_pair(node[i].b, node[i].a),j));}} else if(node[i].c1 == 'X' && node[i].c2 == 'Z') {for(int j = 1; j <= n; j++) {s.insert(make_pair(make_pair(node[i].a, j),node[i].b));}} else if(node[i].c1 == 'Z' && node[i].c2 == 'X') {for(int j = 1; j <= n; j++) {s.insert(make_pair(make_pair(node[i].b, j),node[i].a));}} else if(node[i].c1 == 'Y' && node[i].c2 == 'Z') {for(int j = 1; j <= n; j++) {s.insert(make_pair(make_pair(j, node[i].a),node[i].b));}} else if(node[i].c1 == 'Z' && node[i].c2 == 'Y') {for(int j = 1; j <= n; j++) {s.insert(make_pair(make_pair(j, node[i].b),node[i].a));}}}printf("%d\n", s.size());}return 0;
}

uvalive4835(模拟)相关推荐

  1. springboot实现SSE服务端主动向客户端推送数据,java服务端向客户端推送数据,kotlin模拟客户端向服务端推送数据

    SSE服务端推送 服务器向浏览器推送信息,除了 WebSocket,还有一种方法:Server-Sent Events(以下简称 SSE).本文介绍它的用法. 在很多业务场景中,会涉及到服务端向客户端 ...

  2. curl模拟post请求

    另外可尝试 postman工具 或者用request 直接请求 CURL 发送POST请求curl -header "Content-Type: application/json" ...

  3. flask_模拟请求post,get

    #coding:utf-8 import requestsres = requests.post(url="http://192.168.135.105:8888/",data={ ...

  4. 模拟内存计算如何解决边缘人工智能推理的功耗挑战

    模拟内存计算如何解决边缘人工智能推理的功耗挑战 How analog in-memory computing can solve power challenges of edge AI inferen ...

  5. 为放大器模拟输入模块提供可靠的输入过电压保护

    为放大器模拟输入模块提供可靠的输入过电压保护 Signal Chain Basics #159: Provide robust input overvoltage protection for amp ...

  6. 模拟Servlet本质

    JavaWeb系列教程,持续更新 JavaWeb-Servlet 模拟Servlet本质 使用IDEA开发Servlet程序 Servlet对象的生命周期 适配器(GenericServlet)改造S ...

  7. 2021年大数据Flink(四十):​​​​​​​Flink模拟双十一实时大屏统计

    目录 Flink模拟双十一实时大屏统计 需求 数据 编码步骤: 1.env 2.source 3.transformation 4.使用上面聚合的结果,实现业务需求: 5.execute 参考代码 实 ...

  8. Python:模拟登录、点击和执行 JavaScript 语句案例

    案例一:网站模拟登录 # douban.pyfrom selenium import webdriver from selenium.webdriver.common.keys import Keys ...

  9. 杨老师课堂_Java核心技术下之控制台模拟文件管理器案例

    背景需求介绍: 编写一个模拟文件管理器的程序,实现控制台对文件和文件夹的管理操作. 要求在此程序中: 当用户输入指令 1 时,代表"指定关键字检索文件",此时需要用户输入检索的目录 ...

最新文章

  1. 在Ubuntu 16.04.6 LTS上升级python 3.5到3.7.3实录
  2. easyui数据表格显示复选框_WinCC 报警控件、在线趋势/表格控件数据查询
  3. java面向对象程序设计董小圆_2017-2018-2 20165325 实验三《Java面向对象程序设计》实验报告...
  4. Kettle日常使用汇总整理
  5. docker之数据卷管理
  6. linux查看注册表信息,linux登录档(日志)相关简介
  7. #pragma comment和#pragma 预处理指令详解
  8. JS replace 回调
  9. 转:Zookeeper快速入门
  10. SAP GUI是如何启动本地安装的office word应用的
  11. 全国计算机等级考试题库二级C操作题100套(第05套)
  12. java 应用监控系统_GitHub - jiangbin216/JavaMonitor: 一款适用于Java应用的在线性能监控系统(JM)...
  13. php无限极 left right,PHP超牛逼无限极分类生成树方法
  14. php ajax可编辑表格,jquerAjax+php实现表格的增删改查(带数据库)
  15. 测验8: 程序设计方法学 (第8周)(编程题)
  16. B站 汇编语言 视频 教程
  17. LeetCode热门100之 无重复字符的最长子串
  18. 面试官都会问些什么问题?
  19. 2021-05-11 MongoDB面试题 MySQL与MongoDB之间最基本的差别是什么
  20. ftdi android,FTDI D2xx android java not reading

热门文章

  1. 前端优化方案-JavaScript 优化方案 收藏 此文于2010-06-04被推荐到CSDN首页
  2. BUUCTF-Reverse:reverse1
  3. 数据库mysql中delimiter的作用和用法
  4. Android新建项目选择SDK的区别
  5. 关于职场和职业发展的一些心得
  6. 都2021年了,不会还有人连深度学习都不了解吧(一)- 激活函数篇
  7. 嵌入式面试知识点总结 -- ARM篇
  8. Hi3516A开发--接触
  9. IOTA 交易,确认和共识
  10. 【David Silver强化学习公开课】-7:Policy Gradient