zoukankan      html  css  js  c++  java
  • uva 469

    题目:给你一个矩阵和某些点,找到给的点所处连续的W区域的面积(八个方向)。

    分析:搜索。floodfill算法,利用搜索直接求解就可以了。

    说明:注意读入数据的格式。

     1 #include <cstdio>
     2 #include <cstring>
     3 using namespace std;
     4 
     5 char map[105][105], used[105][105];
     6 int ans;
     7 void dfs(int x, int y)
     8 {
     9     if(x < 0 || y < 0 || map[x][y] == 0)
    10         return;
    11     if(used[x][y] != 0 || map[x][y] != 'W')
    12         return;
    13 
    14     used[x][y] = 1;
    15     ans ++;
    16     int i, j;
    17     for (i = -1; i <= 1; i++)
    18         for (j = -1; j <= 1; j++)
    19             dfs(x+i, y+j);
    20 }
    21 
    22 int main()
    23 {
    24     int t, i, j;
    25     char str[105];
    26     scanf("%d ", &t);
    27     while(t--)
    28     {
    29         memset(map, 0, sizeof(map));
    30         int n = 0;
    31         while(gets(str))
    32         {
    33             if(str[0] == '')
    34                 break;
    35             if(str[0] != 'W' && str[0] != 'L')
    36             {
    37                 sscanf(str, "%d %d", &i, &j);
    38                 memset(used, 0, sizeof(used));
    39                 ans = 0;
    40                 dfs(i-1, j-1);
    41                 printf("%d
    ", ans);
    42             }
    43             else{
    44                 sscanf(str, "%s", map[n++]);
    45             }
    46         }
    47         if(t)
    48             puts("");
    49     }
    50     return 0;
    51 }
  • 相关阅读:
    Scintilla开源库使用指南
    HLSL中的MUL指令深层剖析
    用游戏编辑器制作MOD脱颖而出
    乘法快速算法
    Python3之format
    Python3之Zip
    python时间处理之datetime
    Python3 每次处理一个字符
    SQL 循环插入10000条
    一个.py引用另一个.py中的方法
  • 原文地址:https://www.cnblogs.com/aze-003/p/5140274.html
Copyright © 2011-2022 走看看