2B2T中国版

 找回密码
 立即注册
查看: 704|回复: 10

问道题

[复制链接]

45

主题

348

帖子

764

积分

等级:铁锭

积分
764

阿巴阿巴~海王

发表于 2023-1-2 20:45:33 | 显示全部楼层 |阅读模式

c++语言
谁能帮我做对我送那个人一个大型物资点

马上又到了一年一度的新年联欢,小明作为班里的班长,负责组织策划新年联欢活动,
他决定采购一些奖品奖励积极参与每个活动项目的同学。为了激励更多的人参与活动,需要采购的奖品数目越多越好。班费中可支出的钱数为 m 元,现给定商店中 n 种可作为奖品的物品的价格和库存数量,怎样才能购得最多的物品数?

输入描述
输入文件共有 n+1 行;
第一行包含两个正整数 m(1<m≤10000)和 n(1≤n≤100),表示可支出的费用为 m 元和可供购买的物品有 n 种。
接下来的 n 行,每行包含两个数(由一个空格分隔),分别表示一种物品的单价 ai​ 和库存数量 bi​。ai​ 和 bi​ 均不会超过 10000。

输出描述
输出文件仅包含一个整数,表示最多可以购买的物品数量。

用例输入 1 [color=rgb(48, 145, 242) !important][url=][/url]
500 6100 320 1550 1035 55 660 2
用例输出 1 [color=rgb(48, 145, 242) !important][url=][/url]
25


提示
价格为 5 的可以买 6 个,价格为 20 的可以买 15 个,价格为 35 的可以买 4 个,总共买了25件奖品。




c++语言
谁能帮我做对我送那个人一个大型物资点





回复

使用道具 举报

101

主题

1591

帖子

3160

积分

等级:钻石

积分
3160

阿巴阿巴~海王你有什么可豪横的~

QQ
发表于 2023-1-3 10:20:27 | 显示全部楼层
为什么不是基地而是物资点qwq
原论坛名没人比我更懂cn
回归啦   伊甸园组织成员
失恋不可怕,可怕的是你只有一个
回复 支持 反对

使用道具 举报

13

主题

115

帖子

4216

积分

等级:钻石

积分
4216

阿巴阿巴~

QQ
发表于 2023-1-3 13:42:26 | 显示全部楼层
#include <iostream>
#include <algorithm>
using namespace std;

const int N = 110;

struct Product {
    int price;
    int amount;
} products[N];

bool cmp(Product a, Product b) {
    return a.price < b.price;
}

int main() {
    int m, n;
    cin >> m >> n;

    for (int i = 0; i < n; i++) {
        cin >> products[i].price >> products[i].amount;
    }

    sort(products, products + n, cmp); // 按照价格从小到大的顺序排序

    int count = 0;
    for (int i = 0; i < n; i++) {
        int amount = min(products[i].amount, m / products[i].price); // 购买数量尽量多
        count += amount;
        m -= amount * products[i].price; // 更新剩余的钱数
        if (m == 0) {
            break;
        }
    }

    cout << count << endl;

    return 0;
}
mark
回复 支持 反对

使用道具 举报

38

主题

262

帖子

1056

积分

等级:金锭

积分
1056

阿巴阿巴~海王

QQ
发表于 2023-1-3 13:49:28 | 显示全部楼层
用wurst直接进攻老师家
论坛早期划水人员
xin服论坛uid14
回复 支持 反对

使用道具 举报

13

主题

115

帖子

4216

积分

等级:钻石

积分
4216

阿巴阿巴~

QQ
发表于 2023-1-3 13:53:33 | 显示全部楼层
另一个:
#include <iostream>
#include <algorithm>

using namespace std;

const int N = 110;

int n, m; // m 表示可支出的费用,n 表示可供购买的物品数量
int a[N], b[N]; // a[i] 表示第 i 个物品的单价,b[i] 表示第 i 个物品的库存数量

int main()
{
    cin >> m >> n;
    for (int i = 1; i <= n; i++)
        cin >> a[i] >> b[i];
   
    // 按照 a[i] 从小到大排序
    sort(a + 1, a + n + 1);
   
    // 记录最多可以购买的物品数量
    int cnt = 0;
    for (int i = 1; i <= n; i++)
    {
        // 如果费用足够,就尽可能多地买这种物品
        if (m >= a[i])
        {
            cnt += m / a[i] * b[i];
            m -= m / a[i] * a[i];
        }
    }
   
    cout << c
mark
回复 支持 反对

使用道具 举报

13

主题

115

帖子

4216

积分

等级:钻石

积分
4216

阿巴阿巴~

QQ
发表于 2023-1-3 13:53:54 | 显示全部楼层
         
mark
回复 支持 反对

使用道具 举报

45

主题

348

帖子

764

积分

等级:铁锭

积分
764

阿巴阿巴~海王

 楼主| 发表于 2023-1-3 14:10:05 | 显示全部楼层
mark_7601 发表于 2023-1-3 13:42
#include
#include
using namespace std;

卧槽,大佬
回复 支持 反对

使用道具 举报

101

主题

1591

帖子

3160

积分

等级:钻石

积分
3160

阿巴阿巴~海王你有什么可豪横的~

QQ
发表于 2023-1-3 14:11:09 | 显示全部楼层

注视都给你标上了
原论坛名没人比我更懂cn
回归啦   伊甸园组织成员
失恋不可怕,可怕的是你只有一个
回复 支持 反对

使用道具 举报

101

主题

1591

帖子

3160

积分

等级:钻石

积分
3160

阿巴阿巴~海王你有什么可豪横的~

QQ
发表于 2023-1-3 14:15:20 | 显示全部楼层
mark_7601 发表于 2023-1-3 18:14
你发的坐标是主世界还是哪?

哥回复错了
原论坛名没人比我更懂cn
回归啦   伊甸园组织成员
失恋不可怕,可怕的是你只有一个
回复 支持 反对

使用道具 举报

13

主题

115

帖子

4216

积分

等级:钻石

积分
4216

阿巴阿巴~

QQ
发表于 2023-1-3 14:17:16 | 显示全部楼层

主世界or地狱or末地
mark
回复 支持 反对

使用道具 举报

2B2T.XIN 版权所有

© 2020-2030

快速回复 返回顶部 返回列表