eureka_771 2022-11-06 10:48 采纳率: 80%
浏览 6
已结题

算法题出现错误测试点和RE

这是题目

img


这是运行结果

img


基本思路是借助排列组合中的插空法,先将输入的数分为奇数偶数,全是一步是一种情况,没有放在循环里,从出现二开始计算。
以下是我的代码

#include <stdio.h>

int A(int a);

//借助排列组合

int main(int argc, char const* argv[])
{
    int N, count = 1, n = 1;
    scanf("%d", &N);
    //分奇数偶数
    if (0 == N % 2) {
        //插空法
        for (int i = 1; i <= N / 2; i++) {
            n = 1;
            for (int j = N - i; j >= N - 2 * i + 1; j--) {
                n *= j;
            }
            count += n / A(i);//排列组合中的A的全排列
        }
    }
    else {
        for (int i = 1; i <= (N + 1) / 2; i++) {
            n = 1;
            for (int j = N - i; j >= N - 2 * i + 1; j--) {
                n *= j;
            }
            count += n / A(i);
        }
    }
    printf("%d", count);
    return 0;
}

int A(int a) {
    int n = 1;
    for (int i = 1; i <= a; i++) { 
        n *= i;
    }
    return n;
}

希望可以帮我看看哪里出了问题,谢谢

  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 11月14日
    • 创建了问题 11月6日

    悬赏问题

    • ¥20 python忆阻器数字识别
    • ¥15 无法输出helloworld
    • ¥15 高通uboot 打印ubi init err 22
    • ¥20 PDF元数据中的XMP媒体管理属性
    • ¥15 R语言中lasso回归报错
    • ¥15 网站突然不能访问了,上午还好好的
    • ¥15 有没有dl可以帮弄”我去图书馆”秒选道具和积分
    • ¥15 semrush,SEO,内嵌网站,api
    • ¥15 Stata:为什么reghdfe后的因变量没有被发现识别啊
    • ¥15 振荡电路,ADS仿真