查找覆盖C ++中给定N范围的所有元素的范围

假设我们有一个包含L和R的范围。我们必须检查或找到索引0 –基于覆盖所有其他给定n – 1范围的范围。如果没有这样的范围,则显示-1。例如,如果L = [2,4,3,1],而R = [4,6,7,9],则输出为3。因此,这意味着第3个索引(1到9)的范围涵盖了所有其他n – 1范围的元素。

由于所有L点和R点都是不同的,因此请找出最小L点和最大R点的范围,如果两者都在同一范围内,则表示所有其他范围都位于该范围内。否则是不可能的。

示例

#include<iostream>

using namespace std;

int fact (int n) {

   if (n == 0)

      return 1;

   return n * fact(n-1);

}

void showRange(int n) {

   int a = fact(n + 2) + 2;

   int b = a + n - 1;

   cout << "[" << a << ", " << b << "]";

}

int main() {

   int n = 3 ;

   showRange(n);

}

输出结果

[122, 124]

以上是 查找覆盖C ++中给定N范围的所有元素的范围 的全部内容, 来源链接: utcz.com/z/330837.html

回到顶部