题意:给你一个只有‘.’和'#'的n*n的格子,问所有的'#'是不是只属于一个十字叉,如果不是输出NO,否则输出YES。

 #include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std; int n;
char g[][];
bool vis[][]; int main()
{
scanf("%d",&n);
for(int i=; i<=n; i++)
{
scanf("%s",g[i]);
}
for(int i=; i<=n; i++)
{
for(int j=; j<n; j++)
{
if(g[i][j]=='#')
{
bool flag=false;
if(g[i+][j-]=='#'&&g[i+][j]=='#'&&g[i+][j+]=='#'&&g[i+][j]=='#'&&i+<=n&&j->=)
{
flag=true;
g[i+][j-]='.';
g[i+][j]='.';
g[i+][j+]='.';
g[i+][j]='.';
g[i][j]='.';
}
else if(g[i+][j+]=='#'&&g[i][j+]=='#'&&g[i][j+]=='#'&&g[i-][j+]=='#'&&j+<n&&i+<=n&&i->=)
{
flag=true;
g[i+][j+]='.';
g[i][j+]='.';
g[i][j+]='.';
g[i-][j+]='.';
g[i][j]='.';
}
else if(g[i-][j]=='#'&&g[i+][j]=='#'&&g[i][j-]=='#'&&g[i][j+]=='#'&&j->=&&i+<=n&&i->=&&j+<n)
{
flag=true;
g[i-][j]='.';
g[i+][j]='.';
g[i][j-]='.';
g[i][j+]='.';
g[i][j]='.';
}
else if(g[i-][j]=='#'&&g[i-][j]=='#'&&g[i-][j-]=='#'&&g[i-][j+]=='#'&&j->=&&i+<=n&&i->=&&j+<n)
{
flag=true;
g[i-][j]='.';
g[i-][j]='.';
g[i-][j-]='.';
g[i-][j+]='.';
g[i][j]='.';
}
else if(g[i][j-]=='#'&&g[i][j-]=='#'&&g[i-][j-]=='#'&&g[i+][j-]=='#'&&j->=&&i+<=n&&i->=&&j+<n)
{
flag=true;
g[i][j-]='.';
g[i][j-]='.';
g[i-][j-]='.';
g[i+][j-]='.';
g[i][j]='.';
}
if(!flag)
{
printf("NO\n");
return ;
}
}
}
}
printf("YES\n");
return ;
}

cf B George and Cards的更多相关文章

  1. cf E. George and Cards

    http://codeforces.com/contest/387/problem/E 题意:给你n个数,然后在输入k个数,这k个数都在n个数中出现,进行每一次操作就是在n个数中选择长度为w的连续序列 ...

  2. Codeforces Round #227 (Div. 2) E. George and Cards set内二分+树状数组

    E. George and Cards   George is a cat, so he loves playing very much. Vitaly put n cards in a row in ...

  3. Codeforces Round #227 (Div. 2) E. George and Cards 线段树+set

    题目链接: 题目 E. George and Cards time limit per test:2 seconds memory limit per test:256 megabytes 问题描述 ...

  4. Codeforces 387E George and Cards

    George and Cards 我们找到每个要被删的数字左边和右边第一个比它小的没被删的数字的位置.然后从小到大枚举要被删的数, 求答案. #include<bits/stdc++.h> ...

  5. cf 546C Soldier and Cards

    题目链接:C. Soldier and Cards Two bored soldiers are playing card war. Their card deck consists of exact ...

  6. George and Cards

    Codeforces Round #227 (Div. 2) E:http://codeforces.com/contest/387/problem/E 题意:给你一个n个数的序列,然后给你一个标准序 ...

  7. cf D George and Interesting Graph

    题意:给你一个有趣图的定义:在这个图中有一个根,根与每个点都有边和回边,除了根之外,其他的点的出度和入度都为2,然后给你一个图让你经过几步操作可以使此图变为有趣图,操作为:删边或者加边. 思路:枚举根 ...

  8. cf C. George and Number

    http://codeforces.com/problemset/problem/387/C 题意:给你一个大数,让你求个集合,可以通过操作得到这个数,求集合中个数最大值,操作 :从集合中任意取两个数 ...

  9. cf B George and Round

    题意:输入n,m,下一行为n个数a1<a2<a3......<an:然后再输入m个数b1<=b2<=b3<.....<=bm: 每个ai都必须在b中找到相等的 ...

随机推荐

  1. [RxJS] Filtering operator: filter

    This lesson introduces filter: an operator that allows us to let only certain events pass, while ign ...

  2. Qt 学习之路:QStringListModel

    上一章我们已经了解到有关 list.table 和 tree 三个最常用的视图类的便捷类的使用.前面也提到过,由于这些类仅仅是提供方便,功能.实现自然不如真正的 model/view 强大.从本章起, ...

  3. easyui 常用代码

    最近在公司制作内部使用数据管理网页,用到了easyui,使用过程中发现与jquery的写法有比较多不一样的地方,趁现在有空,先做个笔记. (这里主要说明的是combobox的用法,其他的像textbo ...

  4. 【转】 iOS开发之手势gesture详解

    原文:http://www.cnblogs.com/salam/archive/2013/04/30/iOS_gesture.html 前言 在iOS中,你可以使用系统内置的手势识别 (Gesture ...

  5. 读懂IL代码(一)

    以前刚开始学C#的时候,总有高手跟我说,去了解一下IL代码吧,看懂了你能更加清楚的知道你写出来的代码是如何运行互相调用的,可是那时候没去看,后来补的,其实感觉也不晚.刚开始看IL代码的时候,感觉非常吃 ...

  6. if....else

    if....else语句是在特定的条件下成立执行的代码,在不成立的时候执行else后面的代码. 语法: if(条件) {条件成立执行}else{条件不成立执行} 下面来写一个简单的实例 以考试成绩为例 ...

  7. Java线程(学习整理)--1--守护线程

    1.什么是守护线程? 今天老师讲解我才知道有守护线程这回事!原来守护线程经常存在于我们的身边,比如:一个免费的网页游戏,里面都会或多或少有些插入性的广告!! 一般情况下,我们不会去点击这些广告的,但是 ...

  8. 115个Java面试题和答案——终极列表

    from http://www.importnew.com/10980.html#collection http://www.importnew.com/11028.html 下面的章节分为上下两篇, ...

  9. I/O多路转接之select

    系统提供select函数来实现多路复⽤用输入/输出模型.select系统调用是用来让我们的程序监视 多个文件句柄的状态变化的.程序会停在select这里等待,直到被监视的文件句柄有一个或 多个发生了状 ...

  10. cocos2d-x编译错误问题

    在xcode中创建的cocos2d-x项目,然后添加了一个基类,里面有虚方法,编译时出错,错误如下: Undefined symbols for architecture x86_64: " ...