enumeration;data structure;math
dp