#2486. 懒阶乘
懒阶乘
题目描述
小明是个好学的孩子。他最近碰到一个有趣的数学问题。
数学上,我们都知道: 一个正整数的阶乘(factorial)是所有小于及等于该数的[正整数]的积。例如, factorial(10) = 10 * 9 * 8 * 7 * 6 * 5 * 4 * 3 * 2 * 1 。
小明碰到的这个数学问题里,描述了一个懒阶乘 lazy 的定义:在一个正整数的递减序列中,我们用一个固 定顺序的运算符序列来依次替换原有的乘法操作符:乘法(*),除法(/),加法(+)和减法(-)。
例如, lazy(10) = 10 * 9 / 8 + 7 - 6 * 5 / 4 + 3 - 2 * 1 。
以上式子中的运算符遵循数学中加减乘除的运算规则。
另外,本题中的除法采用地板除法(即只保留整数部分结果),所以 6 * 5 / 4 等于 7 。
小明想知道:给定一个整数 N ,它的懒阶乘的运算结果是多少。
输入格式
输入的第一行是一个整数 T ,表示有 T 组数据。
对于每组数据,输入是一行一个整数。
输出格式
对于每组输入,输出一行一个整数,即懒阶乘的结果
样例
2
4
10
7
12
样例1解释
解释: 4 * 3 / 2 + 1 ,运算结果是 7
样例2解释
10 * 9 / 8 + 7 - 6 * 5 / 4 + 3 - 2 * 1 ,运算结果是 12
数据范围
5%的数据范围: 1 ≤ N ≤ 10
10%的数据范围:1 ≤ N ≤ 100
50%的数据范围: 1 ≤ N ≤ 10000
100%的数据范围:
100%的数据范围: 1 ≤ T ≤ 20
相关
在以下作业中: