爱
Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^
题目描述
现在有n块砖排成一排。现在zs站在第一块砖的前面,zs可以跳k次,每次可以跳无限远。现在给这n块砖标上数字Si,当zs跳到这块砖上时,其得分s += Si。问zs跳k次之后的最大得分是多少。初始时,得分s = 0。zs每次只能落在一块砖上。
输入
多组输入。每组首先输入两个正整数n,k(1 <= k <= n <= 100)。
接下来的一行有n个数代表Si。
输出
对于每组数据,输出一个正整数S,代表zs可以得到的最大得分。
示例输入
3 31 2 33 21 2 3
示例输出
65
- #include<stdio.h>
- int main()
- {
- int n,k,i,j,a[100],t,s;
- while(~scanf("%d%d",&n,&k))
- {
- s=0;
- for(i=0;i<n;i++)
- scanf("%d",&a[i]);
- for(i=0;i<n-1;i++)
- for(j=0;j<n-i-1;j++)
- if(a[j]<a[j+1])
- {
- t=a[j];
- a[j]=a[j+1];
- a[j+1]=t;
- }
- for(i=0;i<k;i++)
- s+=a[i];
- printf("%d\n",s);
- }
- return 0;
- }