地精部落 bzoj-1925 Sdoi-2010 题目大意:给你一个数n和模数p,求1~n的排列中满足每一个数的旁边两个数,要么一个是边界,要么都比它大,要么都比它小(波浪排列个数) 注释:$1\le n\le 4200$ , $1\le p\le 10^9$. 想法:神题!这题标签给的是dp,但是一个没有动态性的dp应该叫递推吧qwq.先证几个引理: 引理1:对于任意的一个波动序列,将其中的第i个数a[i]离散成坐标系中的一个点(i,a[i]),这样所构成的波动离散点集关于任意的一条平行于x轴…