c语言分数问题总分数最大

每位同学都有自己的一个幸运数,乐乐所在班级共有n位同学,因此有编号为1至n的n块标牌,标牌的编号与自己的幸运数相乘,就是这位同学的分数。你的工作就是帮乐乐寻找一种方案,使得班级总分数最大。 输入 第一行只有一个整数n 第二行共有n个不超过10000的正整数,中间有一个空格隔开。 输出 只有一行且只有一个整数,乐乐班级的总分数。

#include<stdio.h>
int main()
{
    int a[10005];
    long long t=0;
	int n,i,j,x;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	    scanf("%d",&a[i]);
	for(i=0;i<n;i++){
        for(j=0;j<n;j++){
            if(a[i]>a[j]){
                x=a[i];
                a[i]=a[j];
                a[j]=x;
            }
        }
	}
	for(i=0;i<n;i++)
	{
		t+=a[i]*(i+1);
	}
	printf("%lld",t);
	return 0;
}

 

#include<iostream>
#include<cstdio>
#include<cmath>
#include<algorithm>
using namespace std;
const int N=1e5+2;
int q[N];
int main()
{
	int n;
	scanf("%d",&n);
	for(int i=0;i<n;i++)
	    scanf("%d",&q[i]);
	long long s=0;
	sort(q,q+n);
	for(int i=0;i<n;i++)
	{
		s+=q[i]*(i+1);
	}
	printf("%lld",s);
	return 0;
}

引用自:https://blog.csdn.net/TTTuuuuuuuuuu/article/details/116819682

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632