题目描述
注意元素个数的改变和位于上方的条件
样例
#include <cstdio>
int main(){
char s;
scanf("%c",&s);
double a[12][12];
for(int i = 0; i < 12 ; i++){
for(int j = 0 ; j < 12 ; j++){
scanf("%lf", &a[i][j]);
}
}
double sum = 0;
double num = 0;
//行优先
for(int i = 0 ; i < 5 ; i++ ){
for(int j = i + 1 ; j < 11 - i ; j++){
num++;
sum += a[i][j];
}
}
if( s == 'S') printf("%.1lf", sum);
else printf("%.1lf", sum / num);
return 0;
}
算法1
#include<stdio.h>
int main()
{
double M[12][12], sum = 0,n=0;
char A;
scanf(" %c", &A);
for(int i = 0; i < 12; i ++)
{
for (int j = 0; j < 12; j ++)
{
scanf("%lf", &M[i][j]);
if(j>i&&i+j<11)
{
n++;
sum += M[i][j];
}
}
}
if(A =='S')
printf("%.1lf",sum);
else
printf("%.1lf",sum/n);
return 0;
}
算法2
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
blablabla