#1526. 应急物资

    ID: 1526 传统题 文件IO:supplies 1000ms 256MiB 尝试: 12 已通过: 5 难度: 普及 上传者: 标签>合肥经开区第十一届信息学科普日活动初中组基础算法二分前缀和排序贪心

应急物资

本题需要文件读写

文件 IO 为:输入文件 supplies.in,输出文件 supplies.out。请使用上述文件名读入和输出。

问题描述

仓库中有 nn 箱物资,第 ii 箱的保障值为 aia_i。每次任务给出最低需求值 xx,你可以任选若干箱物资,使保障值总和不少于 xx。

对于每次询问,输出最少需要使用的箱数;若全部物资仍无法满足需求,则输出 −1-1。每次询问独立,物资不会实际消耗。

输入格式

从文件 supplies.in 中读入数据。

第一行输入两个整数 n,qn,q,表示物资箱数量和询问次数。

第二行输入 nn 个整数 a1,a2,…,ana_1,a_2,\ldots,a_n。

接下来 qq 行,每行输入一个整数 xx,表示本次任务的最低需求。

输出格式

输出到文件 supplies.out 中。

对于每次询问,输出一行一个整数,表示最少需要使用的箱数;无法满足则输出 −1-1。

样例输入 1

8 7
4 3 3 1 1 4 5 9
1
10
50
14
15
22
30

样例输出 1

1
2
-1
2
3
4
8

评测数据规模

  • 对于 30%30\% 的数据,1≤n,q≤1031\le n,q\le10^3;
  • 对于所有数据,1≤n,q≤1.5×1051\le n,q\le1.5\times10^5,1≤ai≤1041\le a_i\le10^4,1≤x≤1091\le x\le10^9;
  • 输入均为整数。