递归求解,代码不太好看,是2013年7月写的

代码:

#include<stdio.h>
#include<iostream>
#include<string.h>
#include<algorithm>
#include<math.h> using namespace std; char s[][];
int flag[];
int res[];
int tag1[]; int zong,heng;
int tag;
int n,m; int zhao(int qix,int qiy,int zhx,int zhy)
{
int fff=;
for(int i=qix;i<zhx;i++)
{
for(int j=qiy;j<zhy;j++)
{
if(s[i][j]=='.')
continue;
flag[s[i][j]-'A']=;
int ny;
for(ny=j;ny<zhy;ny++)
{
if(s[i][ny]!=s[i][j])
break;
}
heng=ny-;
int nx;
for(nx=i;nx<zhx;nx++)
{
if(s[nx][j]!=s[i][j])
break;
}
zong=nx-;
int cnt=;
tag=;
if(zong!=i&&heng!=j&&zong-i>=&&heng-j>=)
{
for(ny=j;ny<=heng;ny++)
{
if(s[zong][ny]==s[i][j])
cnt++;
else
break;
}
if(cnt==heng-j+)
{
cnt=;
for(nx=i;nx<=zong;nx++)
{
if(s[nx][heng]==s[i][j])
cnt++;
else
break;
}
if(cnt==zong-i+)
tag=;
else
tag=;
}
if(tag)
{
tag1[s[i][j]-'A']++;
fff=;
if(zhao(i+,j+,zong,heng)==)
{
if(tag1[s[i][j]-'A']!=)
tag1[s[i][j]-'A']=;
} }
}
else
tag1[s[i][j]]=;
}
}
return fff;
} int main()
{ while(scanf("%d%d",&n,&m)!=EOF)
{
memset(flag,,sizeof(flag));
memset(tag1,,sizeof(tag1));
int i;
if(n==&&m==)
break;
for(i=;i<n;i++)
scanf("%s",s[i]);
zhao(,,n,m); int cn=;
for(i=;i<;i++)
{
if(tag1[i])
res[cn++]=i;
}
sort(res,res+cn);
for(i=;i<cn;i++)
printf("%c",res[i]+'A');
printf("\n");
}
return ;
}

HDU 2487 Ugly Windows的更多相关文章

  1. POJ 3923 HDU 2487 Ugly Windows 简单计算

    Ugly Windows Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Tot ...

  2. HDU 2487 Ugly Windows(暴力)(2008 Asia Regional Beijing)

    Description Sheryl works for a software company in the country of Brada. Her job is to develop a Win ...

  3. HDU 2487 Ugly window

    这是切的很痛苦的一道题,自己测试了很多样例却终究不过,中间也做了诸多修改,后来无奈去网上看题解,发现遗漏了一种情况,就是两个窗口可能边框都能看见,但是一个嵌套在另一里面,而我判定是不是 “top wi ...

  4. 【HDOJ】2487 Ugly Windows

    暴力解. #include <cstdio> #include <cstring> #define MAXN 105 char map[MAXN][MAXN]; ]; int ...

  5. HDU 5920 Ugly Problem 【模拟】 (2016中国大学生程序设计竞赛(长春))

    Ugly Problem Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Tota ...

  6. HDU - 5920 Ugly Problem 求解第一个小于n的回文数

    http://acm.hdu.edu.cn/showproblem.php?pid=5920 http://www.cnblogs.com/xudong-bupt/p/4015226.html 把前半 ...

  7. HDU 5920 Ugly Problem

    说起这道题, 真是一把辛酸泪. 题意 将一个正整数 \(n(\le 10^{1000})\) 分解成不超过50个回文数的和. 做法 构造. 队友UHC提出的一种构造方法, 写起来比较方便一些, 而且比 ...

  8. HDU 5920 Ugly Problem 高精度减法大模拟 ---2016CCPC长春区域现场赛

    题目链接 题意:给定一个很大的数,把他们分为数个回文数的和,分的个数不超过50个,输出个数并输出每个数,special judge. 题解:现场赛的时候很快想出来了思路,把这个数从中间分为两部分,当位 ...

  9. Ugly Windows

    poj3923:http://poj.org/problem?id=3923 题意:给出两个整数n.m表示屏幕的长宽.屏幕上有一些窗口,每个窗口都是矩形的,窗口的边框用同一个大写字母来表示,不同的窗口 ...

随机推荐

  1. CentOS7 Debian 8 安装VMware-tools

    如在安装过程中碰到未找到gcc 或者 kernel headers的可按以下方案解决,适用任意版本 CentOS 7 1. Update the kernel: $ yum update kernel ...

  2. jquery.cookie.js 用法

    jquery.cookie.js 用法   一个轻量级的cookie 插件,可以读取.写入.删除 cookie. jquery.cookie.js 的配置 首先包含jQuery的库文件,在后面包含 j ...

  3. js一些小题(二)

    ******************************************************************* 一个全局下的函数: function test() { aler ...

  4. 新技能,利用Reflector来修改dll引用

    继上次<ArcObject10.1降级至10.0>又遇到版本降级问题.通常的方式有: 方案一:重新编译 将源代码加载到解决方案中,修改相应dll的版本,比较快捷的方式是多选后,设置属性中特 ...

  5. SharePoint 2013 手动删除爬网项目

    本文介绍如何手动删除某些搜索项目,其实删除搜索项目并不常用,主要还是在刚刚完成爬网,就删除了某些项目,然后有比较敏感需要马上删除的时候.下面,就跟着图文简单了解下手动删除已爬网的项目吧. 1.配置好搜 ...

  6. Stanford机器学习课程(Andrew Ng)

    斯坦福大学机器学习视频教程(附学习笔记,potplay播放器,PPT等资料),很具有学习价值. 链接:http://mooc.guokr.com/note/16274/

  7. 由于无法在数据库 'TestNonContainedDB' 上放置锁 ALTER DATABASE 失败

    Error: 消息5601,级别16,状态1,第1行,由于无法在数据库 'TestNonContainedDB' 上放置锁,ALTER DATABASE 失败.请稍后再试.消息5069,级别16,状态 ...

  8. android拍照选择图片上传服务器自定义控件

    做android项目的时候总免不了遇到图片上传功能,虽然就是调用android系统的拍照和相册选择功能,但是总面部了把一大推代码写在activity里,看上去一大推代码头都昏了.不如把这些功能都集成一 ...

  9. Swift学习--常量.变量.数据类型的使用(二)

    一.Swift中的数组 //Swift中的数组 //NSArray *arr = @["",""]; //和OC数组的区别就是去掉前面的@ let arr11 ...

  10. 小波说雨燕 第三季 构建 swift UI 之 UI组件集-视图集(二)ActionSheet视图 学习笔记

    action动作 sheet表 其实就是一种菜单 参数:1代理:谁去代理它2取消按钮标题3这个按钮标题会自动变成红色4添加设置其他按钮(不想加,设置为nil)   然后我们为这些按钮添加点击事件:   ...