perimeters专题

POJ-1111 Image Perimeters 简单搜索

题目链接 #include<stdio.h>#include<iostream>#include<string>#include<string.h>#include<math.h>#include<algorithm>#include<vector>#include<queue>using namespace std;const int maxn = 35

poj 1111 Image Perimeters

题意:给你一个起点的坐标x,y,要求你从这个坐标向相邻八个方向开始扩展,并且对应坐标的值为'X'才能继续扩展。求最后扩展得到的图形的周长。可以用dfs,其实就是算总周长去掉两个为x的格子的从边,每搜到一个为x的点就加4,并标记,从这个点往周围扩展,如果是向上下左右扩展就需要-1,因为这表示两个为x的格子有从边,如果在斜上方或斜下方就肯定不会有从边,所以不用减。#include<stdio.h