这个题感觉还不错,以前字典树写的是最顺手的,这几次比赛屡屡挂在字典树上也是有阴影了啊~~
题目大意:
给出一些字符串,对每个字符串进行查询,若没出现过返回ok,若出现过就生成新字符串,格式为原字符串+数,数为这个字符串第几次重复出现。
解题思路:
字典树,对于每个字符串的插入次数进行计数。
下面是代码:
#include #include #include #include #include #include #include #include #include #include #include #include #define eps 1e-10#define pi acos(-1.0)#define inf 107374182#define inf64 1152921504606846976#define lc l,m,tr 0 ? (x) : -(x))#define clear1(a, x, size) memset(a, x, sizeof(a[0]) * (min(size,sizeof(a))))#define clearall(a, x) memset(a, x, sizeof(a))#define memcopy1(a , x, size) memcpy(a , x ,sizeof(x[0])*(size))#define memcopyall(a, x) memcpy(a , x ,sizeof(x))#define max( x, y ) ( ((x) > (y)) ? (x) : (y) )#define min( x, y ) ( ((x)