首页 > 移动平台 > 详细

hdu4925Apple Tree

时间:2015-08-31 23:43:32      阅读:181      评论:0      收藏:0      [点我收藏+]
//n*m的果园 , 种一棵树,收获一个果实
//在一个格子施肥 , 其旁边的果树收获的·果实翻倍
//问最多能收获多少果实
//交叉种树 , 则为最大
#include<cstdio>
#include<cstring>
#include<iostream>
using namespace std ;
const int maxn = 110 ;
int map[maxn][maxn] ;
int dx[4] = {0 , 1 , 0  ,-1} ;
int dy[4] = {1 , 0 , -1 , 0} ;
int main()
{
    int n , m ;
    int t ;
    scanf("%d" , &t) ;
    while(t--)
    {
        cin>>n>>m ;
        memset(map , 0 , sizeof(map)) ;
        int ans = 0  ;
        for(int i = 1;i <= n;i++)
          for(int j = 1;j <= m;j++)
          if((i+j)%2 == 0)
          {
              int sum = 0 ;
              for(int k = 0 ;k < 4;k++)
              {
                  int nx = i + dx[k] ;
                  int ny = j + dy[k] ;
                  if(nx >= 1 && nx <= n && ny >= 1 && ny <= m)
                  sum++ ;
              }
              ans += (1<<sum) ;
           }
           cout<<ans<<endl ;
    }
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

hdu4925Apple Tree

原文:http://blog.csdn.net/cq_pf/article/details/48141805

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!