在 C ++ 中猜测排列所需的移动次数
给定一个数字 N,我们需要找到最坏情况下猜测排列所需的移动次数。猜测排列所需的移动次数即 n!。下面举个例子。
输入
5
输出
129
当我们有 5 个元素时,猜有 5 种方式,当我们有 4 个元素时有 4 种方式,依此类推,直至 1。
算法
- 初始化数 n。
- 将 count 初始化为 1。
- 编写一个从 1 到 n 迭代的循环。
- 使用当前数字对 count 求乘积。
- 返回 count。
实施
以下是 C++ 中上述算法的实施
#include <bits/stdc++.h>
using namespace std;
int getNumberMoves(int n) {
int count = 0;
for (int i = 1; i <= n; i++) {
count += i * (n - i);
}
count += n;
return count;
}
int main() {
int n = 9;
cout << getNumberMoves(n) << endl;
return 0;
}输出
如果运行上述代码,则你将获得以下结果。
129
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP