POJ 2029 Get Many Persimmon Trees(DP||二维树状数组)
题意 : 给你每个柿子树的位置,给你已知长宽的矩形,让这个矩形包含最多的柿子树。输出数目
思路 :数据不是很大,暴力一下就行,也可以用二维树状数组来做。
//
#include <stdio.h>
#include <string.h>
#include <iostream> using namespace std ; int mapp[][] ; int main()
{
int N ,S,T ,W,H;
while(scanf("%d",&N) != EOF && N)
{
int x,y ;
memset(mapp,,sizeof(mapp)) ;
scanf("%d %d",&W,&H) ;
for(int i = ; i < N ; i++)
{
scanf("%d %d",&x,&y) ;
mapp[x][y] = ;
}
scanf("%d %d",&S,&T) ;
for(int i = ; i <= W ; i++)
for(int j = ; j <= H ; j++)
mapp[i][j] += (mapp[i-][j]+mapp[i][j-]-mapp[i-][j-]) ;
int ans = - ;
for(int i = S ; i <= W ;i ++)
{
for(int j = T ; j <= H ; j++)
{
ans = max(ans,mapp[i][j]-mapp[i-S][j]-mapp[i][j-T]+mapp[i-S][j-T]) ;
}
}
printf("%d\n",ans) ;
}
return ;
}
二维树状数组
#include<iostream>
#include<math.h>
#include<stdio.h>
#include<string.h>
#define MAX 102
using namespace std;
int c[MAX][MAX];
int lowbit(int x)
{
return x & (-x);
}
void add( int x,int y)
{
int i=x,j=y;
for(i=x;i<MAX;i+=lowbit(i))
for(j=y;j<MAX;j+=lowbit(j))
c[i][j]++;
}
int sum(int x,int y)
{
int i,k,sum = ;
for(i=x; i>; i-=lowbit(i))
for(k=y; k>; k-=lowbit(k))
sum += c[i][k];
return sum;
}
int main()
{
int w,h,i,j,s,t,n;
int x,y,ans;
while(scanf("%d",&n))
{
if(n==)break;
memset(c,,sizeof(c));
scanf("%d%d",&w,&h);
for(i=;i<n;i++)
{
scanf("%d%d",&x,&y);
add(x,y);
}
scanf("%d%d",&s,&t);
ans=;
for(i=s;i<=w;i++)
{
for(j=t;j<=h;j++)
{
ans=max(ans,sum(i,j)-sum(i-s,j)-sum(i,j-t)+sum(i-s,j-t));
}
}
printf("%d\n",ans);
}
}
POJ 2029 Get Many Persimmon Trees(DP||二维树状数组)的更多相关文章
- POJ 2029 Get Many Persimmon Trees (二维树状数组)
Get Many Persimmon Trees Time Limit:1000MS Memory Limit:30000KB 64bit IO Format:%I64d & %I ...
- POJ 2029 Get Many Persimmon Trees 【 二维树状数组 】
题意:给出一个h*w的矩形,再给出n个坐标,在这n个坐标种树,再给出一个s*t大小的矩形,问在这个s*t的矩形里面最多能够得到多少棵树 二维的树状数组,求最多能够得到的树的时候,因为h,w都不超过50 ...
- Get Many Persimmon Trees_枚举&&二维树状数组
Description Seiji Hayashi had been a professor of the Nisshinkan Samurai School in the domain of Aiz ...
- hdu6078 Wavel Sequence dp+二维树状数组
//#pragma comment(linker, "/STACK:102400000,102400000") /** 题目:hdu6078 Wavel Sequence 链接:h ...
- POJ_1195 Mobile phones 【二维树状数组】
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/u013912596/article/details/33802561 题目链接:id=1195&qu ...
- POJ 2029 Get Many Persimmon Trees (模板题)【二维树状数组】
<题目链接> 题目大意: 给你一个H*W的矩阵,再告诉你有n个坐标有点,问你一个w*h的小矩阵最多能够包括多少个点. 解题分析:二维树状数组模板题. #include <cstdio ...
- POJ2029:Get Many Persimmon Trees(二维树状数组)
Description Seiji Hayashi had been a professor of the Nisshinkan Samurai School in the domain of Aiz ...
- POJ 2029 (二维树状数组)题解
思路: 大力出奇迹,先用二维树状数组存,然后暴力枚举 算某个矩形区域的值的示意图如下,代码在下面慢慢找... 代码: #include<cstdio> #include<map> ...
- poj 1195:Mobile phones(二维树状数组,矩阵求和)
Mobile phones Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 14489 Accepted: 6735 De ...
随机推荐
- 返璞归真vc++之字符类型
在今天,大量使用java与.net的程序员已经很少去真实了解字符的底层表达,但是使用VC++编程,对字符的处理却非常慎重,刚学习vc++肯定会为其中的字符类型给晕头转向,今天本人学习第一节,从字符开始 ...
- 【风马一族_Java】如何获取ACSLL表的值
消耗两小时,只为一代码. 终于得到了此代码: public class sows { public static void main(String[] args) { byte[] bytes = n ...
- DEDECMS中,文章页直接输出字段名
文章页中,可直接输出字段名
- NSS_08 extjs表单验证
Extjs做了非常好的表单验证功能, 使用起来非常方便. 系统内置了4种验证功能,分别是alpha, alphanumeric,url, email, 在程序中可以直接使用,(可以结合allowBla ...
- 多线程更新已排序的Datagridview数据,造成数据错位
多线程更新已排序的Datagridview数据,触发Datagridview的auto-sort时间,数据重新排序,造成后面更新数据的更新错误. 解决方法: 方法一.设置Datagridview的表头 ...
- 京东sdk商家上架接口调用问题总结(更新中...)
前言: 最近在做商家发布产品,调用京东sdk,发现问题很多,而且还是在我同事的帮助下完成的,摸索中,菜鸟还请高手门多多提携才好,入正题 首先是引用jd的sdk啦,京东sdk中发布商品需要调用一个 36 ...
- HTML5 Shiv – 让该死的IE系列支持HTML5吧
HTML5能为我们做的事儿很多,最为可口的就是语义化标签的应用,如果你已经在Chrome或者其他支持HTML5的浏览器上用过它的牛x,那这篇文章对你一定有用,因为现在你也可以在IE上用到HTML5. ...
- 有趣的checkbox动画切换状态(支付宝转账成功显示)--第三方开源--AnimCheckBox
这个很有趣的指标通过AnimCheckBox实现,下载地址:https://github.com/lguipeng/AnimCheckBox 代码: activity_main.xml: <Re ...
- ActiveMQ.xml文件的主要配置
ActiveMQ.xml文件默认位置位于 activemq/conf/目录下,主要的配置及解析如下:<beans xmlns="http://www.springframework.o ...
- 一些 PHP 管理系统程序中的后门
一些php网站管理程序的,一些后门,其实官方也没有恶意,主要是大家为了自己的安全. 我倒不怎么关心提示框,SABLOG怎么知道我的版本有漏洞呢,程序肯定有后门.每次登陆后台自动检测官方版本跟当前版本对 ...