题解 | #牛群全排列数#
牛群全排列数
https://www.nowcoder.com/practice/5ab233c23fcc4c69b81bd5a66c07041c
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param n int整型 * @return int整型 */ // int factorial(int n) // { // // write code here // vector<bool> visited(n,false); // vector<int> nums; // for (int i = 1;i <= n;++i) // { // nums.push_back(i); // } // backTrcking(nums,visited); // return result.size() % 1000000007; // } // private: // vector<vector<int>> result; // vector<int> path; // void backTrcking(vector<int>& nums,vector<bool>& visited) // { // //终止条件 // if (path.size() == nums.size()) // { // result.push_back(path); // return; // } // //单层递归 // for (int i = 0;i < nums.size();++i) // { // if (visited[i] == true) // { // continue; // } // visited[i] = true; // path.push_back(i); // backTrcking(nums,visited); // visited[i] = false; // path.pop_back(); // } // } int factorial(int n) { long sum = 1; for(int i = 1; i <= n; i++) { sum *= i; sum %= 1000000007; } return sum; } };
回溯会超时