#D0707. 三十个数的选择方案

三十个数的选择方案

题目描述

小明乱敲键盘敲出来了一个包含 3030 个数的数组:

int num[30] = {
    2, 3, 7, 13, 29, 
    59, 127, 241, 487, 971, 
    1949, 3889, 7789, 15569, 31139, 
    62297, 124577, 249181, 498331, 996689, 
    1993357, 3986711, 7973419, 15946841, 31893713, 
    63787391, 127574789, 255149591, 510299171, 1020598339};

他想要从中选出 nn 个数,显然有 C30nC_{30}^{n} 种选择方法。

每种选择方法他都对选出的 nn 个数求和,这 C30nC_{30}^{n} 种和构成一个序列,他紧接着会对这个序列排个序。

请你输出这个最终序列的第 kk 项。

提示:C3015=155117520C_{30}^{15}=155117520

输入格式

两个数 n,kn,k

输出格式

一行,即按题目方式求出的序列的第 kk 项。

1 3
7

样例解释 1

显然只选一个数的话,构成的最终序列就是 num,第 33 项就是 77

2 33
516
3 100
1100
30 1
2041196671

数据规模与约定

对于 100%100\% 的数据,1n301 \le n \le 301kC30n1\le k\le C_{30}^n

  • 子任务 1(30 分):保证 n4n\le 4C304=27405C_{30}^4=27405)。
  • 子任务 2(30 分):保证 k106k\le 10^6
  • 子任务 3(40 分):没有特殊限制。