#1674. 数论与位运算·多选训练2

数论与位运算·多选训练2

数论与位运算·多选训练2

第 1 题(多选)

关于 C++ sort 比较函数,正确的有()。

{{ multiselect(1) }}

  • 若比较器不合法,排序结果不可依赖
  • 应满足严格弱序
  • 相等元素时 cmp(a,b) 与 cmp(b,a) 均应为 false
  • 可以依赖随机数改变比较结果

第 2 题(多选)

关于整数溢出和取模,正确的有()。

{{ multiselect(2) }}

  • 可用 __int128 承接大整数乘法中间结果
  • long long 也可能溢出
  • 两个余数相乘一定不会溢出
  • signed int 溢出是未定义行为

第 3 题(多选)

关于矩阵快速幂,正确的有()。

{{ multiselect(3) }}

  • 维度不匹配也能相乘
  • 使用二进制快速幂思想
  • 矩阵乘法一般满足交换律
  • 可优化线性递推

第 4 题(多选)

关于组合数取模,正确的有()。

{{ multiselect(4) }}

  • 质数模下非零数可用费马小定理求逆元
  • 任意模数下每个数都有逆元
  • 预处理阶乘和逆阶乘可 O(1) 查询 C(n,k)
  • k>n 时 C(n,k)=1

第 5 题(多选)

关于 STL 迭代器失效,正确的有()。

{{ multiselect(5) }}

  • set 插入通常不影响已有元素迭代器
  • 所有容器插入都会使全部迭代器失效
  • erase 被删元素的迭代器失效
  • vector 扩容可能使迭代器失效