uva297
来源:互联网 发布:残疾人人口基础数据库 编辑:程序博客网 时间:2024/05/19 23:28
题目描述:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=19243
//其实就是四叉树的构建,在构建过程中求解#include <iostream>#include <cstdio>#include <cstring>using namespace std;const int maxn = 1024 + 10;char str[maxn];int flag[32][32], cnt; //flag用来做标记,因为两张图加一起时有些部分可能重叠,求结果不能重复计算重叠的部分void draw(const char* s, int &p, int r, int c, int w) { //根据s创建一个以(r, c)为顶点,w为宽的正方形,用p来记录读到s的什么位置 char ch = s[p++]; if(ch == 'p') { //如果读到一个父节点,则递归求之 draw(s, p, r, c, w/2); //分别递归四个正方形,注意边此时变为一半 draw(s, p, r, c+w/2, w/2); draw(s, p, r+w/2, c, w/2); draw(s, p, r+w/2, c+w/2, w/2); } else if(ch == 'f') { for(int i = r; i < r + w; i++) for(int j = c; j < c + w; j++) if(flag[i][j] == 0) //没有重叠 { flag[i][j] = 1; cnt++; } }}int main(){ int T; scanf("%d", &T); while(T--) { cnt = 0; memset(flag, 0, sizeof(flag)); for(int i = 0; i < 2; i++) { scanf("%s", str); int p = 0; draw(str, p, 0, 0, 32); } printf("There are %d black pixels.\n", cnt); } return 0;}
0 0
- uva297
- UVA297
- uva297
- uva297
- UVA297
- UVA297四叉树
- uva297-四叉树
- Quadtrees UVA297
- uva297 - Quadtrees
- UVA297 - Quadtrees
- 四分树--uva297
- UVA297 Quadtrees(递归!!!)
- uva297(四叉树建立)
- Uva297——Quadtrees
- 【UVA297】四象树(BZOJ2664)
- [UVA297] Quadtrees 四叉树
- uva297 Quadtrees (树的重建)
- 非二叉树Uva297四分树
- 随机取10个数第十种
- ViewPager + Fragment 预加载问题
- day6
- 使用JavaScript实现动态创建含合并单元格(行)的表单
- Mac空间越来越少了怎么办?
- uva297
- 求集合{1,2,...,n}的长度等于M(M<n)的所有子集
- 操作系统设计与实现 第一章 引言(一)
- 最大公约数和最小公倍数
- maven -v Unsupported major.minor version 51.0
- 小米路由器mini实现锐捷认证.
- 2016.4.9测试,2016.4.10写。
- shell 之 pipe
- Java泛型的理解