HDU 4666 Hyperspace(曼哈顿距离)
这是HDU第400个题。
#include <cstdio>
#include <cstring>
#include <set>
#include <iostream>
using namespace std;
int p[],qur[][];
int main()
{
int i,j,k,n,m,num;
while(scanf("%d%d",&n,&m)!=EOF)
{
multiset<int> se[];
multiset<int>::iterator it;
for(k = ; k <= n; k ++)
{
scanf("%d",&num);
if(num == )
{
for(i = ; i < m; i ++)
{
scanf("%d",&p[i]);
qur[k][i] = p[i];
}
for(i = ; i < <<m; i ++)
{
int temp = ;
for(j = ; j < m; j ++)
{
if(i&(<<j))
temp += p[j];
else
temp -= p[j];
} se[i].insert(temp);
}
}
else
{
scanf("%d",&num);
for(i = ; i < <<m; i ++)
{
int temp = ;
for(j = ; j < m; j ++)
{
if(i&(<<j))
temp += qur[num][j];
else
temp -= qur[num][j];
}
it = se[i].find(temp);
se[i].erase(it);
}
}
int maxz = ;
for(i = ; i < <<m; i ++)
{
j = (~i)&((<<m)-);
int t1,t2;
it = se[i].end();
it --;
t1 = (*it);
it = se[j].end();
it --;
t2 = (*it);
if(maxz < t1 + t2)
maxz = t1 + t2;
}
printf("%d\n",maxz);
}
}
return ;
}
HDU 4666 Hyperspace(曼哈顿距离)的更多相关文章
- hdu 4666 最大曼哈顿距离
思路:这题我是看了题目后,上百度搜了一下才知道还有求最大曼哈顿距离的方法.直接把代码copy过来,研读一下,知道了代码实现机制,自然就很容易想到用优先队列来维护每种状态下的xi,yi之和的最大值最小值 ...
- hdu 4666:Hyperspace(最远曼哈顿距离 + STL使用)
Hyperspace Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others)Tota ...
- HDU 4666 Hyperspace (最远曼哈顿距离)
Hyperspace Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others)Tota ...
- HDU 4666 Hyperspace (2013多校7 1001题 最远曼哈顿距离)
Hyperspace Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others)Tota ...
- [HDU 4666]Hyperspace[最远曼哈顿距离][STL]
题意: 许多 k 维点, 求这些点之间的最远曼哈顿距离. 并且有 q 次操作, 插入一个点或者删除一个点. 每次操作之后均输出结果. 思路: 用"疑似绝对值"的思想, 维护每种状态 ...
- hdu4666 Hyperspace ——曼哈顿距离
link:http://acm.hdu.edu.cn/showproblem.php?pid=4666 这题学会了怎么处理曼哈顿距离. 比如维数是k,那么每个点有2^k个状态,求出在每个状态下,所有点 ...
- Hdu 4311-Meeting point-1 曼哈顿距离,前缀和
题目:http://acm.hdu.edu.cn/showproblem.php?pid=4311 Meeting point-1 Time Limit: 2000/1000 MS (Java/Oth ...
- hdu 4666 Hyperspace
曼哈顿距离,两个点设为(x1,y1),(x2,y2),其距离为|x1-x2|+|y1-y2| #include <cstdio> #include <set> #include ...
- HDU - 3567 IDA* + 曼哈顿距离 + 康托 [kuangbin带你飞]专题二
这题难度颇大啊,TLE一天了,测试数据组数太多了.双向广度优先搜索不能得到字典序最小的,一直WA. 思路:利用IDA*算法,当前状态到达目标状态的可能最小步数就是曼哈顿距离,用于搜索中的剪枝.下次搜索 ...
随机推荐
- javascript对象转化为基本数据类型规则
原文:Object-to-Primitive Conversions in JavaScript 对象转化为基础数据类型,其实最终都是用调用对象自带的valueOf和toString两个方法之一并获得 ...
- 用nginx做反向代理来访问防外链图片
用nginx做反向代理来访问防外链图片 女儿的博客从新浪搬到wordpress后,发现原来博客上链接的新浪相册的图片都不能访问了,一年的博客内容,一个个去重新上传图片,修正链接也是个大工程.还是得先想 ...
- vista/win7/win8区别
1. Vista的内核版本号是:Windows 6.0: Windows 7的内核是:Windows 6.1: Windows 8的内核是:Windows 6.2 ...
- 【Django】如何按天 小时等查询统计?
代码: from django.db import connection from django.db.models import Sum,Count #alarm_sum_group_items = ...
- 《C#高级编程》学习笔记------C#中的委托和事件(续)
本文转载自张子阳 目录 为什么要使用事件而不是委托变量? 为什么委托定义的返回值通常都为void? 如何让事件只允许一个客户订阅?(事件访问器) 获得多个返回值与异常处理 委托中订阅者方法超时的处理 ...
- sina第三方登录
Sina 第三方登录 添加网站的流程如下: Sina接入主要审核点: • 1.网站可正常访问:若页面无法打开,或加载时间过长,或未建设完成的网站.或空白网站将无法通过审核: • 2.站点已部署微连接 ...
- codeigniter 视图
2014年7月7日 15:23:05 ci的视图功能很棒, 比如一个网页有四个部分组成,对应4个文件:header.php, sider.php, maincontent.php, footer .p ...
- jQuery结合Ajax实现简单的前端验证和服务端查询
上篇文章写了简单的前端验证由传统的JavaScript转向流畅的jQuery滑动验证,现在拓展一下,使用Ajax实现用户体验比较好的异步查询,同样还是从建立一个简单的表单开始 <form nam ...
- Java for LeetCode 199 Binary Tree Right Side View
Given a binary tree, imagine yourself standing on the right side of it, return the values of the nod ...
- 【QT】ui转代码
windows中安装qt目录下的BIN文件夹里有个uic.exe把UIC.exe和你要转换的xxx.ui文件拷贝到同一目录.开始菜单,运行CMD,命令进入uic.exe和xxx.ui的目录,(或在存放 ...