首页 > 试题广场 >

小苯的粉丝关注

[编程题]小苯的粉丝关注
  • 热度指数:241 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
小苯是“小红书app”的忠实用户,他有 n 个账号,每个账号粉丝数为 a_i
这天他又创建了一个新账号,他希望新账号的粉丝数恰好等于 x。为此他可以向自己已有账号的粉丝们推荐自己的新账号,这样以来新账号就得到了之前粉丝的关注。

他想知道,他最少需要在几个旧账号发“推荐新账号”的文章,可以使得他的新账号粉丝数恰好x,除此以外,他可以最多从中选择一个账号多次发“推荐新账号”的文章。
(我们假设所有旧账号的粉丝们没有重叠,并且如果在第 i 个旧账号的粉丝们推荐了新账号,则新账号会直接涨粉 a_i / 2 下取整个,而如果小苯选择在第 i个旧账号中多次推荐新账号,那么新账号就可以直接涨粉 a_i。)

输入描述:
输入包含 2 行。
第一行两个正整数 n, x\ (1 \leq n, x \leq 100),分别表示小苯的旧账号个数,和新账号想要的粉丝数。
第二行 n 个正整数 a_i\ (1 \leq a_i \leq 100),表示小苯每个旧账号的粉丝数。


输出描述:
输出包含一行一个整数,表示小苯最少需要发送的推荐文章数,如果无法做到,输出 -1
示例1

输入

5 8
1 2 3 4 10

输出

2

说明

选择第 3 个和第 5 个旧账号,并在第 3 个账号多次发文。
头像 丨阿伟丨
发表于 2025-09-15 14:24:41
题目链接 小苯的粉丝关注 题目描述 小苯有 个旧账号,第 个账号有 个粉丝。他想让一个新账号的粉丝数恰好达到 。 他可以通过以下两种方式涨粉: 单次推荐:在一个旧账号 上发文推荐,新账号涨粉 。每个账号都可以进行一次单次推荐。 多次推荐:选择最多一个旧账号 进行多次推荐,新账号涨粉 展开全文