输入一个数字n和一个数字k,再输入n个数字,然后输出所有k个数相加的和。
比如:输入:5 3\n1 2 3 4 5
输出:6(1+2+3 7(1+2+4) 8(1+2+5)……2+3+4的值 2+3+5的值……3+4+5的值
比如:输入:5 2\n5 6 7 8 9
输出:11(5+6) 12(5+7) ……8+9的值
#include <stdio.h>
#include <stdlib.h>
int main() {
int n, k;
// 读入 n 和 k
scanf("%d%d", &n, &k);
// 申请存储 n 个数的数组
int *nums = (int*)malloc(sizeof(int) * n);
// 读入 n 个数
for (int i = 0; i < n; i++) {
scanf("%d", &nums[i]);
}
// 求所有长度为 k 的数组和
int sum = 0;
for (int i = 0; i < n; i++) {
for (int j = i + 1; j < n; j++) {
for (int k = j + 1; k < n; k++) {
sum += nums[i] + nums[j] + nums[k];
}
}
}
printf("%d\n", sum);
// 释放内存
free(nums);
return 0;
}