import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param n int整型 * @return int整型 */ public int factorial (int n) { // write code here final int mod = 1000000007; long re = 1; for (int i = 2; i <= n; i++) { re = (re * i) % mod; } return (int) re; } }
代码使用Java语言。
知识点:计算给定整数的阶乘并对结果取模的问题。
代码使用循环逐步计算阶乘,同时对中间结果进行取模操作,最终返回计算结果。
代码解释:
- 定义一个常量
mod
,表示取模的基数。 - 初始化一个
long
类型变量re
,表示阶乘的结果,初始值为1。 - 使用循环,从2开始到
n
,依次将i
与re
相乘,然后对结果取模mod
,将结果重新赋值给re
,实现阶乘计算和取模。 - 循环结束后,将
re
转换为int
类型并返回作为最终的计算结果。