问题描述:
小明要组织一台晚会,总共准备了n个节目。然后晚会的时间有限,他只能最终选择其中的m个节目。这n个节目是按照小明设想的顺序给定的,顺序不能改变。小明发现,观众你对于晚会的喜欢程度与前几个节目的好看成都有非常大的关系,他希望选出的第一个节目尽可能好看,在此前提下希望第二个节目尽可能好看,依次类推,小明给每个节目定义了一个好看值,请你帮助小明选择出m个节目,满足他的要求
输入格式:
输入的第一行包含两个整数n,m,表示节目的数量。第二行包含n个整数,依次为每个节目的好看值。
输出格式:
输出一行包含m个整数,为选出的节目的好看值。
样例输入:
5 3
3 1 2 5 4
样例输出:
3 5 4
评测用例规模与约定:
对于30%的评测用例,1<=n<=20;
对于60%的评测用例,1<=n<=100;
对于所有评测用例,1<=n<=100000,0<=节目的好看值<=100000。
思路:一圈一圈的找每一圈的最大值及下标并设置相应的标记数组,最后在遍历一次找到与标记数组匹配的项顺序输出即可。
代码:
#include<stdio.h>
int main()
{
long int n,m;
scanf("%d%d",&n,&m)