zoukankan      html  css  js  c++  java
  • HDU4925 Apple Tree 构造

    题意:给你一个N×M的矩阵,一个格子可以放一个苹果树产量为1,也可以施肥使得上下左右的苹果树产量加倍(可叠加)。问你最多能够得到多少苹果

    解题思路:简单的构造问题,我们只需要交替放就行了。

    解题代码:

     1 // File Name: 1005.cpp
     2 // Author: darkdream
     3 // Created Time: 2014年08月07日 星期四 12时07分48秒
     4 
     5 #include<vector>
     6 #include<list>
     7 #include<map>
     8 #include<set>
     9 #include<deque>
    10 #include<stack>
    11 #include<bitset>
    12 #include<algorithm>
    13 #include<functional>
    14 #include<numeric>
    15 #include<utility>
    16 #include<sstream>
    17 #include<iostream>
    18 #include<iomanip>
    19 #include<cstdio>
    20 #include<cmath>
    21 #include<cstdlib>
    22 #include<cstring>
    23 #include<ctime>
    24 #define LL long long
    25 
    26 using namespace std;
    27 int n , m;  
    28 int ans[300][300];
    29 int p(int x)
    30 {
    31    int t = 1;
    32    for(int i =1;i <= x;i ++)
    33       t = t * 2; 
    34    return t;
    35 }
    36 int count(int i , int j)
    37 {
    38    int sum = ans[i-1][j]+ans[i][j-1] + ans[i+1][j] + ans[i][j+1];
    39    return p(sum);
    40 }
    41 int main(){
    42    int t; 
    43    scanf("%d",&t);
    44    while(t--)
    45    {
    46       int n , m ; 
    47       scanf("%d %d",&n,&m);
    48       memset(ans,0,sizeof(ans));
    49       for(int i =1;i <= n;i ++)
    50       {
    51         if(i % 2 == 1)
    52         {
    53           for(int j =1;j <= m;j ++)
    54           {
    55               if(j % 2 == 0 )
    56               {
    57                  ans[i][j] = 1; 
    58               }
    59           }
    60         }else{
    61           for(int j  = 1;j <= m;j ++)
    62               if(j % 2 == 1 )
    63                   ans[i][j] = 1;
    64         }
    65       }
    66       LL rans = 0 ; 
    67       for(int i = 1;i <= n;i ++)
    68         for(int j = 1;j <= m;j ++)
    69         {
    70            if(ans[i][j] == 0)
    71            {
    72               rans += count(i,j);
    73            }
    74         }
    75       printf("%I64d
    ",rans);
    76    }
    77     
    78   return 0;
    79 }
    View Code
    没有梦想,何谈远方
  • 相关阅读:
    数据库存储过程
    asp.net类中公共类DBHelp
    asp.net Cookie的用法实例
    使用SandCastle创建.Net帮助文档
    DotNetNuke(DNN)如何升级到DNN 4.9.3
    两个VS的文档工具
    SunBlogNuke.net logo设计
    自动化测试网站
    Debugging DLL Projects
    .NET 下自动生成UML图
  • 原文地址:https://www.cnblogs.com/zyue/p/3906446.html
Copyright © 2011-2022 走看看