#3170. 26东方茂CSPJ集训 第5天阶段测试(选择题)

26东方茂CSPJ集训 第5天阶段测试(选择题)

1. 一维前缀和 s[i]=s[i-1]+a[i](s[0]=0),区间 [l,r] 的元素和等于?

{{ select(1) }}

  • s[r] - s[l]
  • s[l] - s[r]
  • s[r] - s[l-1]
  • s[r-1] - s[l]

2. sort 的平均时间复杂度是?

{{ select(2) }}

  • O(n log n)
  • O(n)
  • O(n^2)
  • O(log n)

3. 关于贪心算法,下列说法正确的是?

{{ select(3) }}

  • 贪心一定能得到最优解
  • 贪心每步取当前最优且不回退
  • 贪心复杂度总是 O(n^2)
  • 贪心必须与动态规划配合

4. 对区间 [l,r] 每个数加 c,差分数组的正确操作是?

{{ select(4) }}

  • d[l]+=c; d[r]-=c;
  • d[l-1]+=c; d[r]-=c;
  • d[l]+=c; d[r+1]+=c;
  • d[l]+=c; d[r+1]-=c;

5. 二维前缀和求子矩阵:s[x2][y2]-s[x1-1][y2]-s[x2][y1-1]+? ,问号处填?

{{ select(5) }}

  • s[x1][y1]
  • s[x2-1][y2-1]
  • s[x1-1][y1-1]
  • 0

6. 下列最适合用「排序 + 相向双指针」解决的是?

{{ select(6) }}

  • 求数组前缀和
  • 有序数组中找两数之和为定值
  • 求逆序对个数
  • 矩阵转置

7. 代码 for i: for j>i: if(a[i]+a[j]==k)cnt++ 的时间复杂度是?

{{ select(7) }}

  • O(n)
  • O(n log n)
  • O(n^2)
  • O(n^3)

8. n 把枪(攻击 a)、m 只怪(防御 b),a>=b 得 a-b 分,各用一次,求最大总分的正确贪心是?

{{ select(8) }}

  • 强枪打能击杀里防御最小的怪
  • 强枪打能击杀里防御最大的怪
  • 弱枪打防御最大的怪
  • 满足 a>=b 随意配对

9. 执行 d[2]+=3; d[5]-=3; d[4]+=2; d[6]-=2; 再对 d 做前缀和(i=1..7),d[3] 的值是?

{{ select(9) }}

  • 2
  • 3
  • 5
  • 0

10. 仅用简单排序贪心(不借助 DP)无法保证最优的是?

{{ select(10) }}

  • 活动选择(最多不相交区间)
  • 部分背包(可分割)
  • 排队接水(最小平均等待)
  • 0/1 背包(不可分割)