秋高气爽,信奥班的同学们来到美丽的市区公园游玩。
公园的小湖中飘荡着造型各异的各种游船,同学们都想乘船一览湖光山色的美景。
信奥班一共来了 n 名同学,可惜的是一艘船乘坐不了这么多人。经过工作人员确认,需要有 m 名同学搭乘另一艘船。
作为一个资深的 OIer,小 A 每时每刻都在思考各类编程模型;此情此景,小 A 想到了一个问题:如果已知每位同学的体重为 a_i,从 n 个同学中,先移除 m 名同学;剩余的同学中任意选择 1 人或 多人,这些同学最多能组合出多少种不同的体重和?
第 1 行为有两个整数 n 和 m,n 表示同学总人数,m表示要移除的同学人数,用空格分隔。
第 2 行有 n 个正整数 a_1, a_2, a_3,\ldots , a_n,表示每个同学的体重。
仅包括 1 个整数,表示移除 m 人后,剩余的同学任意组合,最多能组合出的不同体重和的数量。
3 1 1 2 2
3
【样例说明】
3 位同学,移除一位体重为 2 的同学,剩余的两名同学体重分别为 1 和 2,可以组合出的体重和有 1,2,3 共 3 种不同的答案。
【数据规模】
对于 20\% 的数据,m=0。
对于 50\% 的数据,m\leq 1,n\leq 10。
对于 100\% 的数据,n\leq 20, m\leq 4,m < n,a_i\leq 100。
东方博宜OJ