We have a sorted set of digits D, a non-empty subset of {'1','2','3','4','5','6','7','8','9'}. (Note that '0' is not included.) Now, we write numbers using these digits, using each digit as many times as we want. For example, if D = {'1','3','5'},
We have a sorted set of digits D, a non-empty subset of {'1','2','3','4','5','6','7','8','9'}. (Note that '0' is not included.) Now, we write numbers using these digits, using each digit as many times as we want. For example, if D = {'1','3','5'},
题目大意:有N头奶牛,每头那牛都有一个标号Pi,1 <= Pi <= M <= N <= 40000.现在Farmer John要把这些奶牛分成若干段,定义每段的不河蟹度为:若这段里有k个不同的数,那不河蟹度为k*k.那总的不河蟹度就是所有段的不河蟹度的总和. 思路:显然如果连续的一段数字相同,我们可以把它们合并成一个数字. 用f[i]表示在1~i这一段的最小不河蟹度.因为答案最大为n,显然不可能出现一段中有超过sqrt(n)个不同的数. 定义b[j],使b[j]+1~i中不同的数