列表

详情


CMB23. 员工考勤记录

描述

给定一个字符串来代表一个员工的考勤纪录,这个纪录仅包含以下两个字符:
'A' : Absent,缺勤
'P' : Present,到场
如果一个员工的考勤纪录中不超过两个'A'(缺勤),那么这个员工会被奖赏。

如果你作为一个员工,想在连续N天的考勤周期中获得奖赏,请问有多少种考勤的组合能够满足要求

输入描述

考勤周期的天数N(正整数)

输出描述

这N天里能获得奖赏的考勤组合数

示例1

输入:

3

输出:

7

原站题解

C 解法, 执行用时: 1ms, 内存消耗: 364KB, 提交时间: 2020-10-31

int main(){
    int n,s;
    scanf("%d",&n);
    s=1+n+n*(n-1)/2;
    printf("%d",s);
}

C 解法, 执行用时: 2ms, 内存消耗: 260KB, 提交时间: 2020-07-23

#include <stdio.h>
//阶乘
int fun (int num)
{
   // if(num == 1||num == 0) return 1;
    if(num<=1) return 1;
    return fun(num-1)*num;
}
int main ()
{
    int n;//考勤天数
    int sum = 0;
    scanf("%d",&n);
   // sum = 1+n+fun(2)/(fun(n)*fun(n-2));
    sum = 1+n+(n-1)*n/2;
    printf("%d",sum);
}

上一题