LA2995 Image is everything
蓝书P12
- #include <cstdio>
- #include <cstring>
- #include <cmath>
- #include <algorithm>
- using namespace std;
- #define REP(i,n) for(int i=0;i<(n);i++)
- const int maxn = ;
- int n;
- char pos[maxn][maxn][maxn];
- char view[][maxn][maxn];
- char read_cahr(){
- char ch;
- for(;;){
- ch=getchar();
- if((ch>='A'&&ch<='Z')||ch=='.') return ch;
- }
- }
- void get(int k,int i,int j,int len,int &x,int &y,int &z){
- if(k==){ x=len; y=j; z=i;}
- if(k==){ x=n--j; y=len; z=i;}
- if(k==){ x=n--len; y=n-j-; z=i;}
- if(k==){ x=j; y=n--len; z=i;}
- if(k==){ x=n-i-; y=j; z=len;}
- if(k==){ x=i; y=j; z=n--len;}
- }
- int main(){
- while(scanf("%d",&n)==&&n){
- REP(i,n) REP(k,) REP(j,n) view[k][i][j]=read_cahr();
- REP(i,n) REP(j,n) REP(k,n) pos[i][j][k]='#';
- REP(k,) REP(i,n) REP(j,n) if(view[k][i][j]=='.')
- REP(p,n){
- int x,y,z;
- get(k,i,j,p,x,y,z);
- pos[x][y][z]='.';
- }
- for(;;){
- bool done=true;
- REP(k,) REP(i,n) REP(j,n) if(view[k][i][j]!='.'){
- REP(p,n){
- int x,y,z;
- get(k,i,j,p,x,y,z);
- if(pos[x][y][z]=='.') continue;
- if(pos[x][y][z]=='#'){
- pos[x][y][z]=view[k][i][j];
- break;
- }
- if(pos[x][y][z]==view[k][i][j]) break;
- pos[x][y][z]='.';
- done=false;
- }
- }
- if(done) break;
- }
- int ans=;
- REP(i,n) REP(j,n) REP(k,n)
- if(pos[i][j][k]!='.') ans++;
- printf("Maximum weight: %d gram(s)\n",ans);
- }
- return ;
- }
LA2995 Image is everything的更多相关文章
- Image Is Everything LA2995
白书第一章例题6 构造.思维.几何. 分别从几个角度去看,有矛盾就删掉,最后遍历一下统计个数 方法证明:第一个方块肯定要删除.假设前k个必须删除,第k+1个矛盾出现,假如不删掉,矛盾将持续存在,故必须 ...
- LA 2995 Image Is Everything
题目链接: https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show ...
随机推荐
- 预防跨站脚本(xss)
对xss的防护方法结合在两点上输入和输出,一是严格控制用户表单的输入,验证所有输入数据,有效监测到攻击,go web表单中涉及到.二是对所有输出的数据进行处理,防止已成功注入的脚本在浏览器端运行. 在 ...
- 001---C/S架构
C/S 架构介绍 什么是C/S架构 C:client,客户端 S:server,服务端 实现客户端和服务端之间的网络通信 什么是网络 人与人之间交流是通过语言,才能彼此理解对方的意思.但是地球上有多个 ...
- Python3爬虫(七) 解析库的使用之pyquery
Infi-chu: http://www.cnblogs.com/Infi-chu/ pyquery专门针对CSS和jQuery的操作处理 1.初始化字符串初始化 from pyquery impor ...
- HBase 高级架构解析
整体框架 使用 ZooKeeper 框架协助 RegionServer(类似于HDFS的nodemanager)用户请求从 Client 到 Zookeeper 进行判断数据属于哪一个 Region ...
- CSS3实现3d菜单翻转
transform-style:flat | preserve-3d: 3d透视属性.针对子元素如何在3d空间相对其父元素渲染,这个属性声明在父元素上,并且他的子元素使用了transform才会有效. ...
- ExtJs工具篇(2)——Aptana Studio 3 汉化
本身用的是中文版本的,但是输入一些中文后,竟然有乱码,所以就想把它汉化.在网上搜索了一下,把步骤记录如下: 首先到这个网站去 http://aptana.com/support 选择View Docu ...
- 活动的生命周期 Android
1.运行程序 onCreate().onStart()和 onResume() 2.跳转到非弹框视图控制器 onPause()和 onStop() 返回上一个视图控制器(没被回收) onRestart ...
- 在Kotlin编写RecyclerView适配器(KAD 16)
作者:Antonio Leiva 时间:Mar 14, 2017 原文链接:https://antonioleiva.com/recyclerview-adapter-kotlin/ 通过创建Recy ...
- 树莓派putty远程登录windows
刚买树莓派的你,还在为要不要购买昂贵的屏幕而纠结吗?看完本博客学会远程登录,妈妈再也不用担心我的学习... 首先我们要知道树莓派的官方推荐系统是raspbian 很建议安装16年9月份的,其他的总是这 ...
- Win7系统下删除文件时出现“正在准备再循环”的解决方法
今天,笔者在备份文件的时候,将一个word文档从移动硬盘复制到桌面.经过一系列“复(meng)杂(bi)”的操作之后,笔者突然发现,文件无法删除了.当右键文件点击“删除”时,出现对话框显示“正在准备 ...