vector<int> v = {1, 2, 3};
bool ok = next_permutation(v.begin(), v.end());
执行完后,下列说法正确的是( )。
- A. ok 为 false,v 仍是 {1, 2, 3}:next_permutation 只探测不改动
- B. ok 为 false,v 变成 {3, 2, 1}:起点就是尽头,函数回卷到最大排列
- C. ok 为 true,v 变成 {1, 3, 2}:函数把区间原地推进到字典序的下一个排列
- D. ok 为 true,v 变成 {3, 2, 1}:一步跳到字典序最大的排列