Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Số bước đoán hoán vị trong C++

Cho N, tìm số bước đoán hoán vị trong trường hợp xấu nhất. Công thức: sum_{i=1..n} i*(n-i) + n.

Ví dụ: N=5 → 129. Giải thích: 5 cách cho 5 phần tử, 4 cho 4 phần tử...

Giải thuật

  • count = 0
  • Vòng lặp i=1..n: count += i * (n - i)
  • count += n
  • Trả về count

Ví dụ minh họa

#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; 
} 

Đầu ra

129