【HDU 4925】BUPT 2015 newbie practice #2 div2-C-HDU 4925 Apple Tree
http://acm.hust.edu.cn/vjudge/contest/view.action?cid=102419#problem/C
Description
Input
For each test case, two integers N, M (1<=N, M<=100) are given in a line, which denote the size of the map.
Output
Sample Input
2 2
3 3
Sample Output
32
题意:给你n×m的格子,每个格子你可以选择给1,或者使它上下左右(如果有)的数字乘2,你对每个格子操作的先后顺序是自由的,求所有格子数字总和的最大值。
t组(小于100)数据,n和m(1到100)
题解:要使总和最大,那就每隔一个格子给1,使得每个给1的格子周围都是乘2的格子,这样它就乘了最多次2,比如3行4列
1 0 1 0
0 1 0 1
1 0 1 0
这里0表示使周围的乘2,我们的顺序是先给1,再乘2,于是总和是4+8+16+8+4+8=48
法一。
模拟这些格子,根据n和m,构造出上述的01二维数组,再对每个格子判断周围几个0,然后乘几次2,累加答案
代码:
#include<cstdio>
#include<cstring> int ma[][];
int main()
{
int n,m,t,k,ans,u,h;
int ma[][];
scanf("%d",&t); while(t--)
{
memset(ma,,sizeof(ma));
ans=;
k=;
scanf("%d%d",&n,&m);
for(int i=; i<n; i++)
{
for(int j=+k; j<m; j+=)
ma[i][j]=;//设置它为1
k=!k;
}
for(int i=; i<n; i++)
{
for(int j=; j<m; j++)
{
if(ma[i][j])
{
h=;
u=;
if(i->=)if(!ma[i-][j])u++;//如果为0,代表乘2
if(i+<n)if(!ma[i+][j])u++;
if(j->=)if(!ma[i][j-])u++;
if(j+<m)if(!ma[i][j+])u++;
for(int l=; l<=u; l++)h*=;
ans+=h;
}
}
}
printf("%d\n",ans); }
return ; }
法二。
如果行列数之和为奇数,则给1,并且使它周围为乘2,则这个1就要乘几次2了,根据是否在边缘,判断乘几次2,累加答案
代码:
//code from lyt
#include<cstdio>
using namespace std;
int T;
int n,m;
long long ans=;
long long now=;
int main()
{
scanf("%d",&T);
while(T)
{
scanf("%d%d",&n,&m);
ans=;
for(int i=; i<=n; i++)
{
for(int j=; j<=m; j++)
{
if((i+j)&)
{
now=;
if(i>)
now<<=;
if(j>)
now<<=;
if(i<n)
now<<=;
if(j<m)
now<<=;
ans+=now;
}
}
}
printf("%lld\n",ans);
T--;
}
return ;
}
法三。
通过分析推出公式(x表示n,y表示m)
ans=1,当x=1,y=1;
ans=2*(y-1),当x=1,y>1;
ans=(x-1)*2,当x>1,y=1;
ans=(x-1)*8*(y-1),当x>1,y>1;
具体怎么分析推出的,...不详
代码:
//code from zdh
#include<stdio.h>
int T,x,y,s;
int main()
{
scanf("%d",&T);
while(T--)
{
scanf("%d%d",&x,&y);
if(x>)
{
if(y==)
s=(x-)*;
else
s=(x-)**(y-);
}
else
{
if(y==)
s=;
else
s=*(y-);
}
printf("%d\n",s);
}
return ;
}
【HDU 4925】BUPT 2015 newbie practice #2 div2-C-HDU 4925 Apple Tree的更多相关文章
- 【CodeForces 312B】BUPT 2015 newbie practice #3A Archer
题 SmallR is an archer. SmallR is taking a match of archer with Zanoes. They try to shoot in the targ ...
- 【CodeForces 605A】BUPT 2015 newbie practice #2 div2-E - Sorting Railway Cars
http://acm.hust.edu.cn/vjudge/contest/view.action?cid=102419#problem/E Description An infinitely lon ...
- 【UVALive 3905】BUPT 2015 newbie practice #2 div2-D-3905 - Meteor
http://acm.hust.edu.cn/vjudge/contest/view.action?cid=102419#problem/D The famous Korean internet co ...
- 【UVA 401】BUPT 2015 newbie practice #2 div2-B-Palindromes
http://acm.hust.edu.cn/vjudge/contest/view.action?cid=102419#problem/B A regular palindrome is a str ...
- 【UVA 11078】BUPT 2015 newbie practice #2 div2-A -Open Credit System
http://acm.hust.edu.cn/vjudge/contest/view.action?cid=102419#problem/A In an open credit system, the ...
- 【最大流】ECNA 2015 F Transportation Delegation (Codeforces GYM 100825)
题目链接: http://codeforces.com/gym/100825 题目大意: N(N<=600)个点,每个点有个名字Si,R(R<=200)个生产商在R个点上,F(F<= ...
- 【宽搜】ECNA 2015 D Rings (Codeforces GYM 100825)
题目链接: http://codeforces.com/gym/100825 题目大意: 给你一张N*N(N<=100)的图表示一个树桩,'T'为年轮,'.'为空,求每个'T'属于哪一圈年轮,空 ...
- 【宽搜】ECNA 2015 E Squawk Virus (Codeforces GYM 100825)
题目链接: http://codeforces.com/gym/100825 题目大意: N个点M条无向边,(N<=100,M<=N(N-1)/2),起始感染源S,时间T(T<10) ...
- 【VSTS 日志】TFS 2015 Update 1 发布 – Git和TFVC代码库可以混合使用了
Visual Studio Team Foundation Server 2015 Update 1已经发布了. 这是 Team Foundation Server (TFS) 的最新版本,是 Mic ...
随机推荐
- Medial Queries的另一用法:实现IE hack的方法
所谓Medial Queries就是媒体查询. 随着Responsive设计的流行,Medial Queries可算是越来越让人观注了.他可以让Web前端工程实现不同设备下的样式选择,让站点在不同的设 ...
- AC日记——导弹拦截 洛谷 P1020 (dp+模拟)
题目描述 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度.某天,雷达捕捉到敌国的导弹 ...
- 【从0到1】android网络框架的选型参考
项目会使用到 socket tcp 级的网络访问,想选取一个使用较成熟异步网络框架, 提到的网络框架: 1. volley, 2. xutils. 3. android 4. netty, 5. mi ...
- angular常见坑洞
由于版本不同,可能有些问题在某些版本下出现,某些版本下不出现. 指令不可平行(v1.3.2): 多个指令不能这样一个接着一个排下去: <div> <directive-one/> ...
- html的解析
Web页面运行在各种各样的浏览器当中,浏览器载入.渲染页面的速度直接影响着用户体验 简单地说,页面渲染就是浏览器将html代码根据CSS定义的规则显示在浏览器窗口中的这个过程.先来大致了解一下浏览器都 ...
- 【转】【WPF】WPF样式(Style)—触发器
样式(Styles)由三部分构成:设置器(Setter).触发器(Triggers).资源(Resources). (1)触发器,让样式的使用更加准确.灵活和高效. (2)触发器(Triggers)主 ...
- android Camera 中添加一种场景模式
转自:http://blog.csdn.net/fulinwsuafcie/article/details/8833652 首先,来了解一下什么是场景模式. 最简单的方法当然是google了,这里有一 ...
- IPAdr.exe注册机[PY]
算法还原: a =raw_input('enter the string: \n') num =len(a) All_c=0 for i in range(0,num,1): b =ord(a[i]) ...
- Resource interpreted as Script but transferred with MIME type text/plain:
我用script做ajax跨域,请求返回的是个文本字符串,chrome提示:Resource interpreted as Script but transferred with MIME type ...
- Brief introduce to Iometer
<本人原创,纯粹为了练习英文博客的写作.转载请注明出处谢谢!非技术博客 http://shiyanch.lofter.com/ > *:first-child { margin-top: ...