烽火传递

成绩 100 开启时间 2016年05月31日 星期二 15:50
折扣 0.8 折扣时间 2016年05月31日 星期二 15:50
允许迟交 关闭时间 2016年05月31日 星期二 15:50
输入文件 balefire.in 输出文件 balefire.out

【题目描述】烽火传递(balefire.c/cpp/pas)

上古文明遗迹内有一种奇怪的力场,它使得所有的魔法力都无法使用,为了通信方便,墨老师一行不得不采用古代烽火传递的方法。所谓烽火传递,是指在远古时代,防御外敌入侵的方法是使用烽火台报讯。烽火台又称烽燧,一般建在险要处或交通要道上。一旦有敌情发生,白天燃烧柴草,通过浓烟表达信息;夜晚燃烧干柴,以火光传递军情。在某两座城市之间有n个烽火台,每个烽火台发出信号都有一定的代价。为了使情报准确地传递,在m个烽火台中至少要有一个发出信号。现输入n,m和每个烽火台发出的信号的代价,请计算总共最少需要花费多少代价,才能使敌军来袭之时,情报能在这两座城市之间准确地传递。

    例如,有5个烽火台,它们发出信号的代价依次为1、2、5、6、2,且m为3,则总共最少花费的代价为4,即由第2个和第5个烽火台发出信号。

【输入格式】

第一行有两个数n,m分别表示n个烽火台,在m个烽火台中至少要有一个发出信号。

第二行为n个数,表示每一个烽火台的代价。

【输出格式】

一个数,即最小代价。

【输入样例】

5 3  (n,m≤100)

    1 2 5 6 2

【输出样例】

4