青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

poj3020

Antenna Placement
Time Limit: 1000MS Memory Limit: 65536K
Total Submissions: 4127 Accepted: 2032

Description

The Global Aerial Research Centre has been allotted the task of building the fifth generation of mobile phone nets in Sweden. The most striking reason why they got the job, is their discovery of a new, highly noise resistant, antenna. It is called 4DAir, and comes in four types. Each type can only transmit and receive signals in a direction aligned with a (slightly skewed) latitudinal and longitudinal grid, because of the interacting electromagnetic field of the earth. The four types correspond to antennas operating in the directions north, west, south, and east, respectively. Below is an example picture of places of interest, depicted by twelve small rings, and nine 4DAir antennas depicted by ellipses covering them.

Obviously, it is desirable to use as few antennas as possible, but still provide coverage for each place of interest. We model the problem as follows: Let A be a rectangular matrix describing the surface of Sweden, where an entry of A either is a point of interest, which must be covered by at least one antenna, or empty space. Antennas can only be positioned at an entry in A. When an antenna is placed at row r and column c, this entry is considered covered, but also one of the neighbouring entries (c+1,r),(c,r+1),(c-1,r), or (c,r-1), is covered depending on the type chosen for this particular antenna. What is the least number of antennas for which there exists a placement in A such that all points of interest are covered?

Input

On the first row of input is a single positive integer n, specifying the number of scenarios that follow. Each scenario begins with a row containing two positive integers h and w, with 1 <= h <= 40 and 0 < w <= 10. Thereafter is a matrix presented, describing the points of interest in Sweden in the form of h lines, each containing w characters from the set ['*','o']. A '*'-character symbolises a point of interest, whereas a 'o'-character represents open space.

Output

For each scenario, output the minimum number of antennas necessary to cover all '*'-entries in the scenario's matrix, on a row of its own.

Sample Input

2
7 9
ooo**oooo
**oo*ooo*
o*oo**o**
ooooooooo
*******oo
o*o*oo*oo
*******oo
10 1
*
*
*
o
*
*
*
*
*
*

Sample Output

17
5
 
思路:二分圖匹配,最小路徑覆蓋,建圖是按自己的感覺(jué)建的相鄰的兩個(gè)連邊,(v,u),(u,v)都加到圖里面,然后最大匹配就是原先的兩倍(不明白)
再然后答案是總點(diǎn)數(shù)n-匹配數(shù)x
若最大匹配為X,已蓋點(diǎn)(指的是兩個(gè)一組被一個(gè)基站覆蓋)個(gè)數(shù)=2*x,未蓋點(diǎn)=sum(總點(diǎn)數(shù))-已蓋點(diǎn)=sum-2*x應(yīng)為未蓋點(diǎn)肯定是單的,
所以覆蓋未蓋點(diǎn)的基站個(gè)數(shù)肯定與未蓋點(diǎn)個(gè)數(shù)一樣=sum-s*x所以總的基站數(shù)為  x+sum-2*x=sum-x
代碼
 1#include<stdio.h>
 2#include<string.h>
 3#include<math.h>
 4#define MAXSIZE 405
 5int dd[4][2]= {{-1,0},{1,0},{0,1},{0,-1}};
 6int result[MAXSIZE+1];
 7short data[MAXSIZE+1][MAXSIZE+1],state[MAXSIZE+1];
 8int h[45][20];
 9int n,m,sum,ans;
10char map[45][20];
11void init()
12{
13    int i,j,k;
14    int xx,yy;
15    sum=0;
16    memset(result,0,sizeof(result));
17    memset(data,0,sizeof(data));
18    scanf("%d%d",&n,&m);
19    for (i=0; i<n ; i++ )
20    {
21        scanf("%s",&map[i]);
22        for (j=0; j<m ; j++ )
23            if (map[i][j]=='*')
24            {
25                sum++;
26                h[i][j]=sum;
27            }

28    }

29    for (i=0; i<n ; i++)
30        for (j=0; j<m; j++)
31            if (map[i][j]=='*')
32            {
33                for (k=0; k<=3; k++)
34                {
35                    xx=i+dd[k][0];
36                    yy=j+dd[k][1];
37                    if (xx>=0&&yy>=0&&xx<n&&yy<m&&map[xx][yy]=='*')
38                        data[h[i][j]][h[xx][yy]]=1;
39                }

40            }

41}

42int find(int a)
43{
44    int i;
45    for (i=1; i<=sum ; i++ )
46    {
47        if (data[a][i]==1&&!state[i])
48        {
49            state[i]=1;
50            if (result[i]==0||find(result[i]))
51            {
52                result[i]=a;
53                return 1;
54            }

55        }

56    }

57    return 0;
58}

59int main()
60{
61    int t,i,j;
62    scanf("%d",&t);
63    for (i=1; i<=t ; i++ )
64    {
65        ans=0;
66        init();
67        for (j=1; j<=sum ; j++ )
68        {
69            memset(state,0,sizeof(state));
70            if (find(j)) ans++;
71        }

72        printf("%d\n",sum-ans/2);
73    }

74    return 0;
75}

76

 

posted on 2012-02-02 12:56 jh818012 閱讀(187) 評(píng)論(0)  編輯 收藏 引用


只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


<2025年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

導(dǎo)航

統(tǒng)計(jì)

常用鏈接

留言簿

文章檔案(85)

搜索

最新評(píng)論

  • 1.?re: poj1426
  • 我嚓,,輝哥,,居然搜到你的題解了
  • --season
  • 2.?re: poj3083
  • @王私江
    (8+i)&3 相當(dāng)于是 取余3的意思 因?yàn)?3 的 二進(jìn)制是 000011 和(8+i)
  • --游客
  • 3.?re: poj3414[未登錄](méi)
  • @王私江
    0ms
  • --jh818012
  • 4.?re: poj3414
  • 200+行,跑了多少ms呢?我的130+行哦,你菜啦,哈哈。
  • --王私江
  • 5.?re: poj1426
  • 評(píng)論內(nèi)容較長(zhǎng),點(diǎn)擊標(biāo)題查看
  • --王私江
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲日本久久| 欧美一区二区三区播放老司机 | 久久亚洲综合网| 国产精品成人久久久久| 欧美日韩免费看| 亚洲欧洲一区二区在线观看| 欧美一区二区三区四区在线观看地址 | 亚洲区欧美区| 久久免费视频网| 狠狠干狠狠久久| 久久精品国产久精国产一老狼| 这里只有视频精品| 欧美连裤袜在线视频| 亚洲精品少妇| 国产精品老牛| 亚洲最新色图| 国产精品一区在线播放| 久久综合亚州| 亚洲精选一区二区| 一区二区欧美在线| 国产小视频国产精品| 亚洲激情欧美| 国产日韩欧美精品一区| 正在播放亚洲| 午夜精品久久99蜜桃的功能介绍| 国产精品电影在线观看| 亚洲人成久久| 欧美日韩在线视频一区| 国产美女扒开尿口久久久| 国产精品久久久一区二区三区| 亚洲九九九在线观看| 中文av一区特黄| 国产亚洲激情视频在线| 欧美色一级片| 免费不卡视频| 欧美人体xx| 欧美极品在线观看| 国产精品99久久久久久www| 奶水喷射视频一区| 欧美一区二区三区四区视频| 久久不射网站| 亚洲欧洲日产国产网站| 美女视频网站黄色亚洲| 欧美日韩一区二区三区在线观看免 | 亚洲国产精品久久久久秋霞不卡| 亚洲黄色在线视频| 亚洲精品色图| 欧美日韩天天操| 国产欧美va欧美不卡在线| 久久国产精品色婷婷| 久久久久看片| 亚洲美洲欧洲综合国产一区| 一本色道久久综合亚洲精品不| 亚洲一二三区在线观看| 国产一在线精品一区在线观看| 欧美顶级大胆免费视频| 欧美午夜精品久久久| 久久精品国产成人| 欧美成人三级在线| 欧美在线中文字幕| 欧美激情精品久久久久| 欧美一区二区三区成人| 欧美大片一区二区| 久久久久久久激情视频| 欧美日韩国产123| 久久这里有精品15一区二区三区| 欧美日韩高清区| 久久久伊人欧美| 国产精品国产三级国产aⅴ浪潮| 久久久在线视频| 欧美丝袜一区二区三区| 嫩草影视亚洲| 国产亚洲激情在线| 一区二区三区免费在线观看| 韩国美女久久| 亚洲欧美欧美一区二区三区| 亚洲欧洲一区二区三区| 午夜精彩视频在线观看不卡| 日韩特黄影片| 老鸭窝亚洲一区二区三区| 欧美一区二区三区精品电影| 久久婷婷成人综合色| 欧美在线二区| 国产精品国产三级国产aⅴ浪潮| 亚洲国产精品传媒在线观看| 国产精品久久久久一区二区三区共| 免费观看国产成人| 国产欧美一区二区三区久久| 亚洲美女少妇无套啪啪呻吟| 亚洲国产精品久久久久秋霞影院| 亚洲欧美一区二区在线观看| 亚洲色无码播放| 欧美日本国产| 91久久精品视频| 亚洲欧洲一区二区在线观看| 久久全国免费视频| 久热精品视频在线| 国产亚洲综合在线| 午夜精品三级视频福利| 亚洲欧美制服中文字幕| 欧美视频不卡中文| 一区二区欧美精品| 午夜宅男欧美| 国产欧美日韩亚洲一区二区三区| 国产精品99久久久久久www| 亚洲影院在线观看| 国产精品高潮呻吟| 亚洲一级在线观看| 国产精品一区二区三区乱码| 亚洲午夜羞羞片| 久久av一区| 国产人成一区二区三区影院| 欧美精品亚洲精品| 欧美一区二区三区精品| 国产日韩一区二区| 亚洲欧美另类在线观看| 欧美一区永久视频免费观看| 国产伦精品一区二区三区高清| 亚洲一区黄色| 久久亚洲精品一区| 亚洲第一区在线观看| 免费成人黄色片| 亚洲区第一页| 午夜精品视频在线观看| 国产综合av| 欧美激情视频一区二区三区不卡| 亚洲精品乱码久久久久久蜜桃91| 亚洲一区自拍| 狠狠色狠狠色综合日日tαg | 亚洲自拍偷拍网址| 久久久久国内| 亚洲欧洲日产国产综合网| 欧美色图首页| 久久精品综合一区| 欧美成人精品一区二区| 一二美女精品欧洲| 国产日本欧美一区二区三区在线| 玖玖国产精品视频| 一本久久综合| 另类av一区二区| 亚洲视频大全| 在线日本欧美| 国产精品日日摸夜夜添夜夜av| 久久久久久久精| 99视频精品全国免费| 欧美在线视频一区二区三区| 国产精品网站在线观看| 免费成人av| 亚洲一区二区三区777| 狠狠综合久久av一区二区小说| 欧美激情国产精品| 午夜精品久久久久99热蜜桃导演| 欧美高清在线观看| 欧美制服第一页| 亚洲精品在线免费观看视频| 国产一区三区三区| 国产精品福利片| 欧美日韩 国产精品| 久久一区二区三区四区| 亚洲视频导航| 亚洲国产精品毛片| 久久综合九色综合网站| 小黄鸭精品aⅴ导航网站入口| 日韩视频在线免费| 怡红院精品视频在线观看极品| 国产精品国产三级国产专区53| 欧美va亚洲va日韩∨a综合色| 亚洲宅男天堂在线观看无病毒| 欧美成人蜜桃| 免费成人av资源网| 久久久久久久久综合| 欧美一区二区日韩| 午夜精品99久久免费| 夜色激情一区二区| 亚洲精品久久久久久久久久久 | 亚洲精品影视| 亚洲高清视频的网址| 精品动漫一区二区| 美女主播一区| 久久久精品性| 欧美日韩另类字幕中文| 久久久久国产精品人| 久久精品论坛| 欧美影院在线播放| 欧美欧美午夜aⅴ在线观看| 欧美一级视频免费在线观看| 另类av导航| 亚洲成色精品| 国产夜色精品一区二区av| 亚洲精品久久久蜜桃| 亚洲人成在线免费观看| 久久精品91久久久久久再现| 国产一区在线观看视频| 国产亚洲欧美激情| 国产自产v一区二区三区c| 激情综合自拍| 亚洲福利一区| 亚洲精品偷拍| 亚洲免费一在线| 久久久国产一区二区|