#P1741. Diamond A&B(2)

Diamond A&B(2)

题目背景

由于本题较难,将本题拆做两题,分别为 diamondA 以及 diamond B

原题仅供参考,请认真阅读 diamondA以及 diamondB的 input&output format

本题为:Diamond B

题目描述

原题 Description

教主上电视了!这个消息绝对是一个爆炸性的新闻。一经传开,大街上瞬间就没人了(都回家看电视去了),商店打烊,工厂停业。大家都把电视机的音量开到最大,教主的声音回响在大街小巷。

小L给小X慌乱地打开自己家的电视机,发现所有频道都播放的是教主的采访节目(-_-bbb)。只见电视屏幕上的教主笑意吟吟,给大家出了一道难题:

一个边长为n的大菱形被均匀地划分成了n*n个边长为1的小菱形组成的网格,但是网格中部分边被抹去了,小L想知道,大菱形内有多少个平行四边形,这些平行四边形内不存在边(平行四边形内是空的)。

教主说,如果谁写出了程序,移动用户请将程序发送到xxxx,联通用户请将程序发送到xxxx……如果答对这个题,将有机会参加抽奖,大奖将是教主签名的Orz教主T-Shirt一件!这个奖品太具有诱惑力了。于是你需要编一个程序完成这么一道题。

Input (input.in)

输入的第1行为一个正整数n,为大菱形的边长。

以下2n行,每行2n个字符,字符为空格,“/”,“\”中的一个。

前n行,第i行中居中有2i个字符,这2i个字符中位置为奇数的字符只可能为“/”或者空格,位置为偶数的字符只可能为“\”或空格,若为空格表示这样一条边不存在,其余字符均为空格,描述了大菱形的上半部分。

后n行,第i行居中有有2(n-i+1)个字符,与上半部分类似地描述了菱形的下半部分

输入文件保证大菱形的轮廓上没有边被抹去。

Output(output.out)

输出仅包括一个整数,为满足要求的平行四边形个数。

Sample Input

4 /
//
/\ /
/ / \

// / /

/\ / \ / /

Sample Output

3

DiamondB

在输入的矩形中进行diamond原题中要求的操作。

输入数据形如 diamondA的输出数据。

输出数据形如原题输出数据。

输入格式

第一行:n

以下2*n+1行,改为矩形后各边的输出,1表示有边,0表示无边。

输出格式

输出仅包括一个整数,为满足要求的平行四边形个数。

4
1111
11101
1000
10111
1100
10101
0111
11101
1111
3

提示

数据范围:

对于20%的数据,n≤10;

对于40%的数据,n≤60;

对于60%的数据,n≤200;

对于100%的数据,n≤888。

时限1s