华为OD机试【云短信平台优惠活动】

题目描述

某云短信厂商,为庆祝国庆,推出充值优惠活动。

现在给出客户预算,和优惠售价序列,求最多可获得的短信总条数

输入描述

第一行客户预算M,其中 0<=M<=100

第二行给出售价表,P1,P2,... Pn,其中 1<=n<=100

Pi为充值i元获得的短信条数.

1<=Pi<=1000,1<=n<=100

输出描述

最多获得的短信条数

示例1

输入

6

10 20 30 40 60

输出

70

说明

分两次充值最优,1元、5元各充一次。总条数10+60=70

示例2

输入

18

1 2 30 40 60 84 70 80 90 150

输出

252

动态规划 完全背包问题

#include <bits/stdc++.h>
using namespace std;

int main() {
	int sum;
	cin >> sum;
	int tmp;
	vector<int>num;//存放每种套餐对应的短信数
	vector<int>dp(sum+1,0);
	while (cin >> tmp) {
		num.push_back(tmp);
		if (cin.get() == '\n')
			break;
	}
	for (int i = 0; i < num.size(); i++) {
		for (int j = i+1; j <= sum; j++) {
			dp[j]=max(dp[j],dp[j-i-1]+num[i]);//j-(i+1)->i号套餐对应的费用为i+1
		}
	}
	cout << dp[sum];
}

全部评论

相关推荐

点赞 评论 收藏
分享
01-15 17:34
保定学院 Java
数学转码崽:学历没优势就得卷项目和实习啊,但是我看了一下你这个项目,什么雪花算法,搜索引擎,Docker,minio这些都属于通用的东西啊,根本不算亮点,没有任何业务相关性。 还有第二个看到统一鉴权,分片上传估计面试官都不想看了。连我一个偶尔刷刷牛客简历的都看多了,面试官估计早都看吐了。。。 秋招结束了,就尽量找找中小厂吧,毕竟你现在转行已经没时间了,高低有一段实习经历
点赞 评论 收藏
分享
菜鸡29号:根据已有信息能初步得出以下几点: 1、硕士排了大本和大专 2、要求会多语言要么是招人很挑剔要么就是干的活杂 3、给出校招薪资范围过于巨大,说明里面的薪资制度(包括涨薪)可能有大坑
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客企业服务