首页 > 试题广场 >

平均年龄

[编程题]平均年龄
  • 热度指数:31448 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
已知某公司总人数为 W ,平均年龄为 Y 岁(每年 3 月末计算,同时每年 3 月初入职新人),假设每年离职率为 x , x > 0 && x < 1 ,每年保持所有员工总数不变进行招聘,新员工平均年龄 21 岁。
从今年 3 月末开始,请实现一个算法,可以计算出第 N 年后公司员工的平均年龄。(最后结果向上取整)。
数据范围:

输入描述:
输入W Y x N


输出描述:
输出第N年后的平均年龄
示例1

输入

5 5 0.2 3

输出

15
推荐
#include <iostream>
#include <cmath>

using namespace std;
void AverageAge()
{
    // 总人数为W,平均年龄为Y岁
    // 每年离职率为x,x>0&&x<1
    double W, Y, x, N;

    while(cin >> W >> Y >> x >> N)
    {
        while(N--)
        {
            Y = 21 * x + (1 - x) * (Y + 1);
        }

        cout << ceil(Y) << endl;
    }
}

int main()
{
    AverageAge();
    return 0;
}

编辑于 2016-04-06 10:50:52 回复(20)