zoukankan      html  css  js  c++  java
  • Fire Net HDU 1045

    简单深搜,可以完全暴力,不会超时的。

    #include<iostream>
    #include<cstring>
    #include<cmath>
    using namespace std;
    #define MAX(a,b) (a>b?a:b) 
    char maze[10][10];
    int n, maxn;
    
    void DFS(int step,int count);
    int cheak(int x, int y);
    int main()
    {
        int i;
        while(scanf("%d",&n), n)
        {
            maxn = 0;
            for(i = 0; i < n; i++)
                scanf("%s",maze[i]);
            DFS(0,0);
            printf("%d
    ",maxn);
        }
        return 0;
    }
    
    void DFS(int step,int count)
    {
        int x, y;
        maxn = MAX(maxn,count);
        if(step == n*n)
            return ;
        x = step/n;
        y = step%n;
        if(maze[x][y] == '.' && cheak(x,y))
        {
            maze[x][y] = 'O';
            DFS(step+1,count+1);
            maze[x][y] = '.';
        }
        DFS(step + 1, count);
    }
    
    int cheak(int x, int y)
    {
        int i;
        for(i = x-1; i >= 0; i--)
        {
            if(maze[i][y] == 'O')
                return 0;
            else if(maze[i][y] == 'X')
                break;
        }
        for(i = y-1; i >= 0; i--)
        {
            if(maze[x][i] == 'O')
                return 0;
            else if(maze[x][i] == 'X')
                break;
        }
        return 1;
    }
  • 相关阅读:
    xml ui
    xml ui
    xml ui
    debug
    centOS7 mini配置linux服务器(一)安装centOs7
    数据结构之__链表
    数据结构之__队列
    数据结构之__栈
    在树莓派上使用 SSD1306 OLED 屏幕
    git官方手册
  • 原文地址:https://www.cnblogs.com/chenchengxun/p/3759398.html
Copyright © 2011-2022 走看看