算法训练——最大的算式

Posted hqx-curiosity

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法训练——最大的算式相关的知识,希望对你有一定的参考价值。

 

//最大的算式
//对输入的N个数逆序排序,前K个数的积乘于剩余N-K个数的和 
#include<stdio.h>
#include<stdlib.h>
#define MAXN 100 
int comp(const void*a,const void*b)//用来做比较的函数。
{
    return *(int*)b - *(int*)a; //降序 
}
int main(){
	int i,N,K,sum = 0,product = 1; 
	int a[MAXN];
	scanf("%d %d",&N,&K);
	for(i=0;i<N;i++)
		scanf("%d",&a[i]);
	qsort(a,N,sizeof(int),comp);
	for(i=0;i<K;i++)
		product *=a[i];
	for(i=K;i<N;i++)
		sum += a[i];
	printf("%d",sum*product);
	return 0; 
} 

  

以上是关于算法训练——最大的算式的主要内容,如果未能解决你的问题,请参考以下文章

蓝桥杯 算法训练 ALGO-116 最大的算式

算法训练 最大的算式(DP)

算法训练 简单加法(基本型)

最大公约数伪代码

求最大公约数伪代码

代码随想录算法训练营第13天 | ● 239. 滑动窗口最大值 ● 347.前 K 个高频元素 ● 总结