ACM

ACdream - 1063 平衡树(字典树)

ACdream - 1063 平衡树(字典树)
比赛时一看就是字典树,但是当时脑子短路,想了一些莫名其妙的东西就没做了。事后补上~~~(求最大最小也就是把0变1,1变0,变成两个不同的编码而已。因为字典树用的指针版本,如果不在使用后delete就会报ME)代码:StatusAcceptedTime1064msMemory2856kBLength1796LangC++#include <iostream> #include... 继续阅读 »
ACM

HDU 1247 - Hat’s Words(字典树,map)

HDU 1247 - Hat’s Words(字典树,map)
题目的意思就是给你一些字符串,然后从字符串里面找这样的字符串输出:1、这个字符串在给出的列表里面2、这个字符串由其中其他两个字符串组成。一看就是字典树,建树,然后拆分字符串遍历,搜索就行。然后,这个题map也可以做,代码量减少一倍,时间增加一倍。代码:自建字典树:StatusAcceptedTime62msMemory8240kBLength1167LangC++#include <... 继续阅读 »
ACM

HDU 4825 - Xor Sum(字典树)

HDU 4825 - Xor Sum(字典树)
题目意思是找出一个数和给出的数异或最大,由于数值最大为2^32,异或用到的是二进制的0和1,所以我们只需要建立一个两分支的高度为最高33的字典树就好了。我们在每个分支终点标记这个二进制数的10进制数所在数组的位置。然后就是搜索就可以了。代码:StatusAcceptedTime655msMemory43476kBLength1655LangC++#include <iostream... 继续阅读 »