C. Sweets Eating(cf)dp
原题链接:Problem - 1253C - Codeforces
题目大意: 糖果每天最多吃m个,一共n个糖果。糖果第d天吃的花费是a[i] * d 问你吃k块糖果的最小花费是多少。
思路:先把每颗糖果的a[i]排序,例如1 2 3 4 5..比如m为3,一天最多吃三颗糖。那么如果要吃1颗糖,当然选择最少的,而且在第一天吃,花费就是1;如果2颗,2 <= 3,都在第一天吃,所以1 + 2 = 3..如果4颗,肯定让4 3 2在第一天吃,1 在第二天吃,那么答案就是4 +3 + 2 + 1 * 2..
前缀和:每颗糖果都加一遍的结果。
状态转移方程:
if(i <= m) dp[i] = s[i];else dp[i] = s[i] + dp[i - m];
其实也是一个递归的思想,每m个糖果一周期,看代码:
AC代码:
#include<bits/stdc++.h>
using namespace std;
#define INF 0x3f3f3f3f
#define ios ios::sync_with_stdio(false);cin.tie(0); cout.tie(0);
typedef pair<int, int> PII;
const double pi = acos(-1.0);
#define rep(i, n) for (int i = 1; i <= (n); ++i)
#define rrep(i, n) for (int i = n; i >= (1); --i)
typedef long long ll;
#define sqar(x) ((x)*(x))const int N = 2e5 + 10;
ll s[N];
ll dp[N];int main(){int n, m;cin >> n >> m;rep(i, n) cin >> s[i];sort(s + 1, s + 1 + n);rep(i, n) s[i] += s[i - 1];rep(i, n){if(i <= m) dp[i] = s[i];else dp[i] = s[i] + dp[i - m];cout << dp[i] << " ";}return 0;
}
C. Sweets Eating(cf)dp相关推荐
- B. Catching Cheaters(cf)dp
原题链接:Problem - 1446B - Codeforces 题目大意:给你两个字符串A,B,让你分别从A,B中截取子串(连续)C,D,然后这两个串的最长公共子序列长度是LCS(C,D),让你找 ...
- B. Orac and Models(cf)dp
原题链接:Problem - 1350B - Codeforces 题意: 求一个下标单调递增且互为倍数,即满足j > i且j为i的倍数,并且s[i] < s[j]的最长子序列. 其实和最 ...
- 子矩阵(暴搜(全排列)+DP)
子矩阵(暴搜(全排列)+DP) 一.题目 子矩阵 时间限制: 1 Sec 内存限制: 128 MB 提交: 1 解决: 1 [提交][状态][讨论版] 题目描述 给出如下定义: 1. 子矩阵:从一 ...
- DisplayPort1.4协议学习(一)DP协议概览
DisplayPort1.4协议学习(一)DP协议概览 Note:本文为DP1.4协议学习系列的第一篇,本篇首先从DP整体结构上简要说明DP协议的传输方式 有关传输速率对比的问题,请STFW(Sear ...
- SIMATIC S7-300 Profibus通讯——(3)DP/DP Coupler使用
SIMATIC S7-300 Profibus通讯 --(3)DP/DP Coupler使用-- 1 DP/DP Coupler模块概述 DP/DP Coupler用于连接两个Profibus-DP主 ...
- (转)dp动态规划分类详解
dp动态规划分类详解 转自:http://blog.csdn.NET/cc_again/article/details/25866971 动态规划一直是ACM竞赛中的重点,同时又是难点,因为该算法时间 ...
- B. Frog Traveler(cf)bfs
原题链接:Problem - 1601B - Codeforces 题目大意:一个青蛙它从井底跳出去.从x点可以网上蹦[0, ax]的距离到y点,到了y点之后又会掉下来by步.问你它最少走多少步出去. ...
- B. Integers Have Friends(cf)二分 + st表
原题链接:Problem - 1548B - Codeforces 解决RMQ(区间最值)问题的算法. 总结的来说求rmq问题有多种方法:线段树,ST表等 线段树预处理O(nlogn),查询O(log ...
- 穿越火线(CF)策划文章(部分)
1.马哲:我不做大哥好多年 2.最强王者之师-SV战队--老马做到了 3.河南百城省赛圆满落幕,十年百城魅力不减 4.CFPL新赛季观赛福利来袭,锁定斗鱼直播体验百分百中奖 5.阿飞寄语十周年火线盛典 ...
最新文章
- python while循环语句-python循环语句讲解(一):while循环
- JavaScript中split() 使用方法
- AttributeError: 'NoneType' object has no attribute 'grid'报错解决方案
- 节前福利 | 三位大佬带你从客户成功、销售、市场端打造 To B 运作体系 !
- UnicodeDecodeError: 'ascii' codec can't decode byte 0x82 in position 4..... 针对调用文件出现该错误时的解决办法
- 牛客 - 小朋友你是否有很多问号(容斥+组合数学)
- 多位院士、院士候选人入选,132人拟获表彰!
- 信息学奥赛一本通(1110:查找特定的值)
- leetcode50:Pow(x, n)详解——pygo
- Windows 电源管理
- RESTful API 设计思考
- 创建自己的oracle解释计划
- 这样的代码才是好代码
- android 模拟点击屏幕,按键精灵后台简明教程(后台找色,后台鼠标点击等)
- 1097 特殊的整数数列求和
- MT-考试座位-颜色排序
- AlphAction编译不通过问题:error: command ‘:/home/yst/cudas/cuda-10.0/bin/nvcc‘ failed with exit status 1
- 直接从Google Play下载apk(附源码)
- 算法学习----红黑树
- 线上拼团活动方案怎么制作设计?
热门文章
- activemq mysql 配置详解_ActiveMQ配置详解
- 面对裁员,该如何应对
- ubuntu 中文输入法
- 无法创建目录或文件问题的解决办法
- java下载word文档到本地
- 计算机和回收站桌面快捷方式,电脑桌面的回收站快捷方式被我删掉了,要如何恢复?...
- 电商-齐论教育-5+5+5新手第一课-新手小白应该做什么
- mysql数据库双网卡配置_双网卡的绑定的实现与测试
- 【转】缺陷与出路—一个游戏开发者的反思 二、项目开发中的混沌和秩序
- Android Tip : Android GestureDetector 手势识别 抬起 操作