solution.md 1.5 KB
Newer Older
每日一练社区's avatar
每日一练社区 已提交
1 2 3 4 5 6 7 8 9
# 总分数最大

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

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
以下程序实现了这一功能,请你填补空白处内容:

```cpp
#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++){
			_____________
		}
	}
	for(i=0;i<n;i++)
	{
		t+=a[i]*(i+1);
	}
	printf("%lld",t);
	return 0;
}
```

每日一练社区's avatar
每日一练社区 已提交
36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
## template

```cpp
#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;
}
```

## 答案

```cpp
69 70 71 72 73
if(a[i]>a[j]){
	x=a[i];
	a[i]=a[j];
	a[j]=x;
}
每日一练社区's avatar
每日一练社区 已提交
74 75 76 77 78 79 80
```

## 选项

### A

```cpp
81 82 83 84 85
if(a[i]<a[j]){
	x=a[i];
	a[i]=a[j];
	a[j]=x;
}
每日一练社区's avatar
每日一练社区 已提交
86 87 88 89 90
```

### B

```cpp
91 92 93 94 95
if(a[i]>a[j]){
	x=a[i];
	a[j]=x;
	a[i]=a[j];
}
每日一练社区's avatar
每日一练社区 已提交
96 97 98 99 100
```

### C

```cpp
101 102 103 104 105
if(a[i]<a[j]){
	x=a[i];
	a[j]=x;
	a[i]=a[j];
}
每日一练社区's avatar
每日一练社区 已提交
106
```