#P1433. Day7 概率、递推与逻辑(重制版·10题)

Day7 概率、递推与逻辑(重制版·10题)

Day7 概率、递推与逻辑(重制版·10题)

范围:古典概率、互补事件、简单递推、德摩根律与条件判断。

第 1 题

同时掷两枚均匀六面骰子,点数之和为 99 的概率是( {{ select(1) }} )。

  • 1/121/12
  • 1/91/9
  • 1/61/6
  • 2/92/9

第 2 题

袋中有 33 个红球、22 个蓝球,不放回抽取两个球,两球同色的概率是( {{ select(2) }} )。

  • 1/51/5
  • 2/52/5
  • 1/21/2
  • 3/53/5

第 3 题

逻辑表达式 !(a || b) 与( {{ select(3) }} )始终等价。

  • !a || !b
  • !a && !b
  • a && b
  • a || !b

第 4 题

命题“若 PP,则 QQ”的逆否命题是( {{ select(4) }} )。

  • QQ,则 PP
  • 若非 PP,则非 QQ
  • 若非 QQ,则非 PP
  • PP,则非 QQ

第 5 题

数列满足 f0=2,f1=3,fn=fn1+2fn2f_0=2,f_1=3,f_n=f_{n-1}+2f_{n-2},则 f5f_5 为( {{ select(5) }} )。

  • 2727
  • 4040
  • 5353
  • 6767

第 6 题

数列满足 f0=0,f1=1,fn=(fn1+fn2)mod5f_0=0,f_1=1,f_n=(f_{n-1}+f_{n-2})\bmod5,则 f2026f_{2026} 为( {{ select(6) }} )。

  • 00
  • 11
  • 22
  • 33

程序:筛选下标并累加递推项

#include <iostream>
using namespace std;

bool ok(int x) {
    return x % 2 == 0 && x % 3 != 0;
}

int main() {
    int n;
    cin >> n;
    int f[100] = {1, 2};
    for (int i = 2; i <= n; ++i)
        f[i] = (f[i - 1] + f[i - 2]) % 7;

    int ans = 0;
    for (int i = 1; i <= n; ++i)
        if (ok(i)) ans += f[i];
    cout << ans;
    return 0;
}

第 7 题

输入 8 时,程序输出( {{ select(7) }} )。

  • 44
  • 99
  • 1010
  • 1616

第 8 题

1121\sim12 中,使 ok(x) 返回 true 的整数共有( {{ select(8) }} )个。

  • 33
  • 44
  • 55
  • 66

第 9 题

若把函数中的 && 改为 ||,对任意正整数输入,最终的 ans( {{ select(9) }} )。

  • 一定变小
  • 不会小于原值
  • 一定不变
  • 一定变为 00

第 10 题

忽略整数运算的常数时间,程序关于 nn 的时间复杂度是( {{ select(10) }} )。

  • O(1)O(1)
  • O(logn)O(\log n)
  • O(n)O(n)
  • O(n2)O(n^2)