HDU4666+POJ2926【最远曼哈顿距离】
一开始就明白那个N*1《k的算法了,
可无奈删除操作耗时还是太多,最后学习了STL set,map相应的用法,方便好多。
STL真的是一个好工具
#include<iostream>
#include<cstdio>
#include<map>
#include<set>
#include<vector>
#include<cstring>
using namespace std;
multiset<int> a[60005];
int x[60005][6];
int main()
{
int n,k,op,num;
while(scanf("%d%d",&n,&k)!=EOF)
{
for(int i=0;i<1<<k;i++)
a[i].clear();
for(int i=1;i<=n;i++)
{
scanf("%d",&op);
if(op==0)
{
for(int j=0;j<k;j++)
scanf("%d",&x[i][j]);
for(int j=0;j<1<<k;j++)
{
int s=0;
for(int q=0;q<k;q++)
{
if(j&1<<q) s+=x[i][q];
else s-=x[i][q];
}
a[j].insert(s);
}
}
else
{
scanf("%d",&num);
for(int j=0;j<1<<k;j++)
{
int s=0;
for(int q=0;q<k;q++)
{
if(j&1<<q) s+=x[num][q];
else s-=x[num][q];
}
multiset<int>::iterator sum=a[j].find(s);
a[j].erase(sum);
}
}
int ans=-100000000;
for(int j=0;j<1<<k;j++)
{
multiset<int>::iterator t=a[j].end();
t--;
int t1=(*t);
t=a[j].begin();
int t2=(*t);
ans=max(ans,t1-t2);
}
printf("%d\n",ans);
}
}
return 0;
}
接下来是POJ2926这道题用上面的方法奇葩的是G++WA,C++TLE,,无语中。。。
把multiset去了稍微改一下就过了,,囧,,,,
#include<iostream>
#include<cstdio>
#include<cstring>
#include<map>
#include<set>
#define inf 999999999
using namespace std;
double x[100005][6];
double a[1<<5+1][2];
int main()
{
int n;
scanf("%d",&n);
{
for(int i=0;i<1<<5;i++)
{
a[i][0]=-inf;
a[i][1]=inf;
}
for(int qq=1;qq<=n;qq++)
{
for(int j=0;j<5;j++)
scanf("%lf",&x[qq][j]);
for(int i=0;i<(1<<5);i++)
{
double sum=0;
for(int j=0;j<5;j++)
{
if(i&(1<<j)) sum+=x[qq][j];
else sum-=x[qq][j];
}
if(sum>=a[i][0])
a[i][0]=sum;
if(sum<=a[i][1])
a[i][1]=sum;//是所有数的相减。。
}
}
double ans=-inf;
for(int i=0;i<(1<<5);i++)
{
// printf("%.2lf %.2lf\n",a[i][0],a[i][1]);
double temp=a[i][0]-a[i][1];
ans=max(ans,temp);
}
printf("%.2lf\n",ans);
}
return 0;
}
HDU4666+POJ2926【最远曼哈顿距离】的更多相关文章
- POJ-2926 Requirements 最远曼哈顿距离
题目链接:http://poj.org/problem?id=2926 题意:求5维空间的点集中的最远曼哈顿距离.. 降维处理,推荐2009武森<浅谈信息学竞赛中的“0”和“1”>以及&l ...
- hdu 4666:Hyperspace(最远曼哈顿距离 + STL使用)
Hyperspace Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others)Tota ...
- poj 2926:Requirements(最远曼哈顿距离,入门题)
Requirements Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 3908 Accepted: 1318 Desc ...
- [HDU 4666]Hyperspace[最远曼哈顿距离][STL]
题意: 许多 k 维点, 求这些点之间的最远曼哈顿距离. 并且有 q 次操作, 插入一个点或者删除一个点. 每次操作之后均输出结果. 思路: 用"疑似绝对值"的思想, 维护每种状态 ...
- HDU 4666 Hyperspace (最远曼哈顿距离)
Hyperspace Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others)Tota ...
- HDU 4666 最远曼哈顿距离
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4666 关于最远曼哈顿距离的介绍: http://blog.csdn.net/taozifish/ar ...
- HDU 4666 Hyperspace (2013多校7 1001题 最远曼哈顿距离)
Hyperspace Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others)Tota ...
- 2018 Multi-University Training Contest 10 CSGO(HDU - 6435)(最远曼哈顿距离)
有 n 种主武器,m 种副武器.每种武器有一个基础分数k种属性值 X[i] . 选出一种主武器 mw 和一种副武器 sw,使得两种武器的分数和 + 每个属性的差值尽量大.(参考下面的式子) 多维的最远 ...
- Codeforces 491B. New York Hotel 最远曼哈顿距离
最远曼哈顿距离有两个性质: 1: 对每一个点(x,y) 分别计算 +x+y , -x+y , x-y , -x-y 然后统计每种组合的最大值就能够了, 不会对结果产生影响 2: 去掉绝对值 , 设 ...
随机推荐
- IE7 css兼容问题
1,float:right; 在IE错位问题 : 使用position:absolute:right:0px; 2,汉字在float状态下 折行 ,可能是因为父级宽度不够, 改用 display:in ...
- Python知识(7)--最小二乘求解
这里展示利用python实现的最小二乘的直接求解方法.其求解原理,请参考:最小二乘法拟合非线性函数及其Matlab/Excel 实现 1.一般曲线拟合 代码如下: # -*- coding:utf-8 ...
- mysql反向解析导致连接缓慢
Content 0.序 1.问题 2.原因 3.解决办法 0.序 本文主要是记录Mysql安装在 VMWARE下,本地连接Mysql速度很慢的原因及解决办法. 1.问题 本地的一个网站使用mysql数 ...
- 在EntityFramework6中管理DbContext的正确方式——1考虑的关键点(外文翻译)
(译者注:使用EF开发应用程序的一个难点就在于对其DbContext的生命周期管理,你的管理策略是否能很好的支持上层服务 使用独立事务,使用嵌套事务,并行执行,异步执行等需求? Mehdi El Gu ...
- Windows系统虚拟内存文件和休眠缓存大小优化
虚拟内存的大小设置 虚拟内存的文件 pagefile.sys 一般在系统盘的根目录下,默认情况下会比较大.下面给出缩小设置方式. 我的电脑(鼠标右键)--属性--高级系统设置--切换到“高级”选项卡- ...
- 无损转换Image为Icon z
如题,市面上常见的方法是: var handle = bmp.GetHicon(); //得到图标句柄 return Icon.FromHandle(handle); //通过句柄得到图标 此法的问题 ...
- 【笨木头Lua专栏】基础补充05:迭代器番外篇
关于迭代器的内容, 另一点点,只是已经无关紧要了.应该算是一种扩展吧.就一起来开开眼界好了~ 笨木头花心贡献.哈?花心?不.是用心~ 转载请注明,原文地址: http://www.benmutou.c ...
- iOS News Reader开源项目
项目介绍 NewsReader项目是一个新闻阅读类开源项目,支持iPhone和iPad. 目前基于该项目并且已发布到App Store的产品有: VOA慢速英语和每天6分钟英语等 项目源码地址:htt ...
- spring开发文档收集
http://docs.spring.io/spring/docs/4.2.1.BUILD-SNAPSHOT/spring-framework-reference/htmlsingle/#aop-at ...
- 《Windows核心编程》第2章——字符和字符处理
ANSI和UNICODE 计算char和wchar_t的长度都一样,都是5,但是二者在内存中的布局实际上是不同的: