为什么这个代码只有60分
查看原帖
为什么这个代码只有60分
480806
xiaobottle楼主2021/2/21 14:40
#include <stdio.h>
#include <stdlib.h>
long long f(int i, int cnt);


int main()
{
   long long c = 0, str[1000] = {0};
   int i = 1, cnt = 0;
   long long sum = 0;
   while (scanf("%lld", &c) != EOF)
   {
        cnt ++;
        str[i ++] = c;
        sum = sum + str[i - 1];
   }
        long long result = 0;
        for (i = 1; i <= cnt / 2; i ++)
        {
            long long t = f (i, cnt);
            long long k = t * sum;
            result = result + k;
        }
        if (cnt % 2 == 0) result = result - f (i - 1 ,cnt) / 2 *sum;
        printf("%lld", result + sum);
        return 0;
}
long long f (int i, int cnt)
{
    long long k1 = 1;
    long long k2 = 1;
    while(i >= 1)
    {
        k1 = k1 * cnt;
        k2 = k2 * i;
        i --;
        cnt --;
    }
    long long result = k1 / k2;
    return result;
}

没问题呀

2021/2/21 14:40
加载中...