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

P5729 【深基5.例7】工艺品制作题解

题目

      现有一个长宽高分别为w,x,h组成的实心玻璃立方体,可以认为是由1×1×1的数个小方块组成的,每个小方块都有一个坐标(i,j,k)。现在需要进行q次切割。每次切割给出(x1​,y1​,z1​),(x2​,y2​,z2​)这 6 个参数,保证x1​≤x2​,y1​≤y2​,z1​≤z2​;每次切割时,使用激光工具切出一个立方体空洞,空洞的壁平行于立方体的面,空洞的对角点就是给出的切割参数的两个点。

       换句话说,所有满足x1​≤i≤x2​,y1​≤j≤y2​,z1​≤k≤z2​ 的小方块(i,j,k) 的点都会被激光蒸发。例如有一个4×4×4的大方块,其体积为64;给出参数(1,1,1),(2,2,2) 时,中间的8块小方块就会被蒸发,剩下56个小方块。现在想知道经过所有切割操作后,剩下的工艺品还剩下多少格小方块的体积?

输入格式

第一行三个正整数w,x,h。

第二行一个正整数q。

接下来q行,每行六个整数(x1​,y1​,z1​),(x2​,y2​,z2​)

输出格式

输出一个整数表示答案

输入样例

4 4 4
1
1 1 1 2 2 2

输出样例

56

代码

#include<iostream>
using namespace std;
int a[21][21][21],w,x,h,q;
int main(){cin>>w>>x>>h>>q;while(q--){int x1,x2,y1,y2,z1,z2;cin>>x1>>y1>>z1>>x2>>y2>>z2;for(int i=min(x1,x2);i<=max(x1,x2);i++){for(int j=min(y1,y2);j<=max(y1,y2);j++){for(int k=min(z1,z2);k<=max(z1,z2);k++){a[i][j][k]=1;}}}}int count=0;for(int i=1;i<=w;i++){for(int j=1;j<=x;j++){for(int k=1;k<=h;k++){if(a[i][j][k]==0){count++;}}}}cout<<count<<endl;return 0;
}

相关文章:

  • 数据资源将被视为资产 明天起纳入财务报表
  • 防火墙双机热备配置步骤
  • ubuntu22.04 安装jdk8,jdk11,jdk17,jdk21 并且便于切换
  • Springcloud Alibaba使用Canal将Mysql数据实时同步到Redis保证缓存的一致性
  • 继续声明 | 连声明都抄,谁抄袭谁,一目了然,现在竟然恬不知耻的反咬一口。
  • c语言实现得到某数的某方(n^k)的值
  • IntelliJ IDEA Apache Dubbo,IDEA 官方插件正式发布!
  • C语言之整型提升
  • [Angular] 笔记 9:list/detail 页面以及@Output
  • mysql使用全文索引+ngram全文解析器进行全文检索
  • 基于SpringBoot的中小型企业质量管理
  • 医院安全(不良)事件报告系统源码 支持二次开发、支持源码交付
  • Postman接口测试工具使用
  • STL——查找算法
  • kubeadm来搭建k8s集群。
  • 0x05 Python数据分析,Anaconda八斩刀
  • codis proxy处理流程
  • Elasticsearch 参考指南(升级前重新索引)
  • JavaScript函数式编程(一)
  • laravel with 查询列表限制条数
  • MySQL-事务管理(基础)
  • Storybook 5.0正式发布:有史以来变化最大的版本\n
  • 分享几个不错的工具
  • 名企6年Java程序员的工作总结,写给在迷茫中的你!
  • 如何正确配置 Ubuntu 14.04 服务器?
  • 限制Java线程池运行线程以及等待线程数量的策略
  • 想晋级高级工程师只知道表面是不够的!Git内部原理介绍
  • 蚂蚁金服CTO程立:真正的技术革命才刚刚开始
  • ​软考-高级-系统架构设计师教程(清华第2版)【第12章 信息系统架构设计理论与实践(P420~465)-思维导图】​
  • #DBA杂记1
  • (Python) SOAP Web Service (HTTP POST)
  • (二)c52学习之旅-简单了解单片机
  • (附源码)springboot社区居家养老互助服务管理平台 毕业设计 062027
  • (附源码)ssm高校升本考试管理系统 毕业设计 201631
  • (六)软件测试分工
  • (牛客腾讯思维编程题)编码编码分组打印下标题目分析
  • (四)搭建容器云管理平台笔记—安装ETCD(不使用证书)
  • (原創) 如何解决make kernel时『clock skew detected』的warning? (OS) (Linux)
  • (转)机器学习的数学基础(1)--Dirichlet分布
  • .net core 3.0 linux,.NET Core 3.0 的新增功能
  • .NET Core 将实体类转换为 SQL(ORM 映射)
  • .NET 解决重复提交问题
  • .Net6支持的操作系统版本(.net8已来,你还在用.netframework4.5吗)
  • .net反混淆脱壳工具de4dot的使用
  • .net连接oracle数据库
  • .php结尾的域名,【php】php正则截取url中域名后的内容
  • /usr/bin/python: can't decompress data; zlib not available 的异常处理
  • @Data注解的作用
  • @Repository 注解
  • [2024] 十大免费电脑数据恢复软件——轻松恢复电脑上已删除文件
  • [BZOJ3211]:花神游历各国(小清新线段树)
  • [CF]Codeforces Round #551 (Div. 2)
  • [codevs 1515]跳 【解题报告】
  • [emuch.net]MatrixComputations(7-12)
  • [GDMEC-无人机遥感研究小组]无人机遥感小组-000-数据集制备