码迷,mamicode.com
首页 > 其他好文 > 详细

1714 ACdream王国的花店

时间:2015-05-09 16:37:58      阅读:91      评论:0      收藏:0      [点我收藏+]

标签:

Problem Description

  ACdream王国的花店只有一家,所以大家想买花来装饰,店主为了防止有人恶意囤积鲜花来抬高物价(就是黄牛党啦~),于是就定下一个规矩:你买得越多,下一次买的单价就越贵!假设一个人已经购买了x朵鲜花,那么下一次购买第i朵鲜花的单价就是(x+1)*c[i],其中c[i]是一个店主为每一朵花的基本定价。
  ACdream学校想开运动会,需要n朵鲜花来装饰,于是你和你的小伙伴总共m个人就得想办法花最少的钱去完成任务。请问机智的你最少需要花费多少钱呢?

Input

  多组数据,每组数据首先是两个正整数,n(1<=n<=100),m(1<=m<=100)然后是n个整数c[i],(1<=c[i]<=10^6)

Output

  对于每组数据,输出一个整数,表示你需要花费的最少价格。

代码

#include <cstdio>
#include <algorithm>
using namespace std;

int main() {
    int n, m, A[105];
    while (scanf("%d%d", &n, &m) != EOF) {
        for (int i = 0; i < n; i++)
            scanf("%d", &A[i]);
        sort(A, A + n);

        int ans = 0, cnt = 0;
        for (int i = n - 1; i >= 0; i--) {
            ans += A[i] * (cnt / m + 1);
            cnt++;
        }
        printf("%d\n", ans);
    }

    return 0;
}

1714 ACdream王国的花店

标签:

原文地址:http://blog.csdn.net/kl28978113/article/details/45601615

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!