数学期望专题

9.29 - 10.6 更新时间约持续一周

优惠券 Coupons

题目链接:优惠券 Coupons

假设我们某个情况下,我们已经有了 k 种图案,在这个条件下,获得一个新图案需要 天,那我们要求的就是 。由于已经有了 k 种图案,那么获得一个新图案的概率就是 ,那么期望天数 ,最终答案就是

要注意一下分数时候的输出格式。

另外就是这道题我刚开始给卡常了,有点ex。

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;

#define int long long

int n, x, y;

int gcd(int a, int b) { return a == 0 ? b : gcd(b % a, a); }

signed main() {
    while (scanf("%lld", &n) != EOF) {
        x = n, y = 1;
        for (int i = 2; i <= n; i++) {
            x = x * i + y * n, y *= i;
            int GCD = gcd(x, y);
            x /= GCD, y /= GCD;
        }
        if (x % y == 0) printf("%lld\n", x / y);
        else {
            int a = x / y;
            x %= y;
            int lena = log10(a) + 1, leny = log10(y) + 1;
            for (int i = 0; i <= lena; i++) printf(" ");
            printf("%lld\n%lld ", x, a);
            for (int i = 1; i <= leny; i++) printf("-");
            puts("");
            for (int i = 0; i <= lena; i++) printf(" ");
            printf("%lld\n", y);
        }
    }
	return 0;
}
相关推荐
·云扬·1 小时前
【Leetcode hot 100】101.对称二叉树
算法·leetcode·职场和发展
西阳未落1 小时前
C语言中的内存函数(memcpy, memmove, memcmp, memset)
c语言·开发语言
自动驾驶小卡4 小时前
boost::circular_buffer的使用方法简介
c++·boost·circular_buffer
Greedy Alg6 小时前
LeetCode 142. 环形链表 II
算法
睡不醒的kun6 小时前
leetcode算法刷题的第三十二天
数据结构·c++·算法·leetcode·职场和发展·贪心算法·动态规划
范纹杉想快点毕业7 小时前
ZYNQ PS 端 UART 接收数据数据帧(初学者友好版)嵌入式编程 C语言 c++ 软件开发
c语言·笔记·stm32·单片机·嵌入式硬件·mcu·51单片机
先做个垃圾出来………7 小时前
残差连接的概念与作用
人工智能·算法·机器学习·语言模型·自然语言处理
乔宕一8 小时前
stm32 链接脚本没有 .gcc_except_table 段也能支持 C++ 异常
c++·stm32·嵌入式硬件
SuperCandyXu8 小时前
P3205 [HNOI2010] 合唱队-普及+/提高
c++·算法·洛谷
_OP_CHEN8 小时前
数据结构(C语言篇):(十二)实现顺序结构二叉树——堆
c语言·数据结构·算法·二叉树·学习笔记··顺序结构二叉树