[HDU5536] Chip Factory】的更多相关文章

/** 题目:hdu5536 Chip Factory 链接:http://acm.hdu.edu.cn/showproblem.php?pid=5536 题意:给定n个数,令X=(a[i]+a[j])^a[k], i,j,k都不同.求最大的X. 思路:字典树,由于转化为二进制最大是32位.将所有数转化为二进制,不足32位补0. 然后逆序插入字典树(逆序是为了查询的时候,保证先找最大的位,这样结果才是最大的). 枚举i,j.从字典树删除i,j.然后在字典树找k.计算结果.然后把i,j的数重新插入…
Chip Factory 题意:一个n个数的数列,求三个数其中两个数的和与另外一个数的异或值最大,输出这个最大值. 思路:和前面那个百度之星资格赛HDU4825的类似,多了两个过程,一个是枚举和,另一个是删除过程,第一次写删除操作,还一遍A了,小激动. 会不会是后台水,东北师范官方没有给出标准测试数据,也就是说这数据是hdu YY的,我猜是这样,碰到过类似的情况,错误的代码竟然A了区域赛的题.这样为了AC貌似有点不好呀,不过思路很值得学习! struct tree { int f; tree *…
Problem Description John is a manager of a CPU chip factory, the factory produces lots of chips everyday. To manage large amounts of products, every processor has a serial number. More specifically, the factory produces n chips today, the i-th chip p…
题目大意:给n个数,编号为1~n,取三个编号不同的数,使表达式(a+b)^c的值最大. 题目分析:将这n个数按二进制位建立一棵trie.枚举i.j的和,查询亦或最大值,但在查询之前要把i.j在trie中删除,查询完毕后再插入trie. ps:用数组实现trie会超时,因为每次test case之前都要初始化数组,非常耗时. 代码如下: # include<iostream> # include<cstdio> # include<cmath> # include<…
传送门:>Here< 题意:给出一个长度为N的序列,求$Max\{ (a_i + a_j) ⊕ a_k \}$ (i,j,k均不相同)  ($N \leq 1000$) 解题思路 既然$O(n^3)$不行,就考虑$O(n^2 \ log \ n)$的做法. 网上说得很对,凡是和xor有关的80%都是Trie…… 将所有数的二进制建立Trie树,枚举$i,j$——此时在trie树中删去$a_i, a_j$,然后用上一篇文章的方法求得最大的异或. 那么这道题的关键问题就在于如何删去$a_i, a_…
[题目链接] http://acm.hdu.edu.cn/showproblem.php?pid=5536 [题意] 求一个式子,给出一组数,其中拿出ai,aj,ak三个数,使得Max{ (ai+aj) ^ ak } [题解] 其实这里就需要大家做一个删除的操作: 类似于dfs的恢复现场的操作即可. [代码] #include<cstdio> #include<cstring> #include<algorithm> using namespace std; ; ][]…
地址:http://acm.split.hdu.edu.cn/showproblem.php?pid=5536 题目: Chip Factory Time Limit: 18000/9000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others)Total Submission(s): 2044    Accepted Submission(s): 919 Problem Description John is a mana…
Chip Factory Time Limit: 18000/9000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others)Total Submission(s): 368    Accepted Submission(s): 202 Problem Description John is a manager of a CPU chip factory, the factory produces lots of chips…
Chip Factory Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5536 Description John is a manager of a CPU chip factory, the factory produces lots of chips everyday. To manage large amounts of products, every proc…
给你n个数,a1....an,求(ai+aj)^ak最大的值,i不等于j不等于k 思路:先建字典树,暴力i,j每次删除他们,然后贪心找k,再恢复i,j,每次和答案取较大的,就是答案,有关异或的貌似很多都用字典树,也是醉了 /*Problem : 5536 ( Chip Factory ) Judge Status : Accepted RunId : 15506230 Language : G++ Author : qianbi08*/ #include<iostream> #include&…