蓝书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的更多相关文章

  1. Image Is Everything LA2995

    白书第一章例题6 构造.思维.几何. 分别从几个角度去看,有矛盾就删掉,最后遍历一下统计个数 方法证明:第一个方块肯定要删除.假设前k个必须删除,第k+1个矛盾出现,假如不删掉,矛盾将持续存在,故必须 ...

  2. LA 2995 Image Is Everything

    题目链接: https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show ...

随机推荐

  1. Go搭建一个Web服务器

    package main import ( "fmt" "net/http" "strings" "log" ) fun ...

  2. C++代码理解 (强制指针转换)

    #include<iostream> using namespace std; class A { public: A() { a=; b=; c=; f=; } private: int ...

  3. Python3爬虫(三)请求库的使用之urllib

    Infi-chu: http://www.cnblogs.com/Infi-chu/ 一.urllib库: 1. 是Python内置的HTTP请求库 2. 在Python2中,由urllib和urll ...

  4. Python3 列表,元组,字典,字符串知识小结

    一.知识概要 1. 列表,元组,字典,字符串的创建方式 2. 列表,元组,字典,字符串的方法调用 3. 列表,元组,字典,字符串的常规用法 二.列表 # 列 表 # 列表基础 list_1 = ['a ...

  5. luogu4238 【模板】多项式求逆

    ref #include <iostream> #include <cstdio> using namespace std; typedef long long ll; int ...

  6. Linux 下 PHP 扩展Soap 编译安装

    1.进入 PHP 的软件包 pdo 扩展目录中(注:不是 PHP 安装目录) [root@tester /]# /home/tdweb/php-5.4.34/ext/soap 执行 phpize 命令 ...

  7. ios下 active 演示激活

    document.body.addEventListener('touchstart', function () { });

  8. OpenCV入门:(五:更改图片对比度和亮度)

    1. 理论 图片的转换就是将图片中的每个像素点经过一定的变换,得到新像素点,新像素点组合成一张新的图片. 改变图片对比度和亮度的变换如下: 其中α和β被称作增益参数(gain parameter)和偏 ...

  9. LSTM调参经验

    0.开始训练之前先要做些什么? 在开始调参之前,需要确定方向,所谓方向就是确定了之后,在调参过程中不再更改 1.根据任务需求,结合数据,确定网络结构. 例如对于RNN而言,你的数据是变长还是非变长:输 ...

  10. 利用jquery操作dom时,用event.target优化dom操作

    html: <ul id="contents"> <li data-link="#part1">Part 1</li> &l ...