摘要:
一、失真 失真是信号在传输过程中受到外界因素影响导致信号发生了扭曲和变化。主要的外界因素有宽带限制、噪音干扰、磁场干扰。失真主要分为两种情况,可识别失真(有失真但是可以识别出波形信号中的高低电平)和不可识别失真(波形严重失真,无法识别其中的高低电平)。 影响失真程度的因素:1、码元传输速率:码元传输 阅读全文
摘要:
一、码元 码元是指用一个固定时长的信号波形(数字脉冲),代表不同离散数值的基本波形,是数字通信中数字信号的计量单位,这个时长内的信号称为k进制码元,而该时长称为码元宽度。当码元的离散状态有m个时,此时码元为m进制码元。1码元可以携带多个比特的信息量。 二、数字通信系统数据传输速率的两种表示方法 速率 阅读全文
摘要:
分组背包是01背包的进阶问题,但是相对于较为简单,主要难在他的衍生问题。 分组背包就是现有n个物品,将这些物品分成若干组,给你一个容量为v的背包,对于每一个组中的物品,你最多只能选择一个,问哪些物品装入背包可以使得在体积总和不超过容量v的情况下,价值总和最大。 递推公式 可以看出分组背包和01背包有 阅读全文
摘要:
题目链接:HDU 3590【PP and QQ】 思路 树上删边问题,套个反尼姆博弈。 反尼姆博弈是取走最后一个石子的人输掉游戏,所以需要特判一些特殊情况。 1. 有堆的石子个数都是1,所以堆数为奇数时,先手必败,否则先手必胜 2. 所有堆中存在石子数为非1的堆时,若所有堆的异或和为0则,先手必败, 阅读全文
摘要:
题目链接:HDU 2873【Bomb Game】 思路 数据范围较小,直接暴力求所有状态的SG值,然后将棋盘上所有炸弹的对应位置的SG值异或起来就可以得到当前局面的结果。对于相同位置的上有两个炸弹会自动爆炸,本来他们的SG值的异或和就为0,所以可以不用管。 代码 int n, m, vis[N * 阅读全文
摘要:
题目链接:HDU 3980【Paint Chain】 思路 第一次操作,无论从哪个珠子开始染色,都会得到相同的长度为n - m的链,然后就是在这条链中取一段长度为m的珠子染色,当这一段珠子在链条中间的时候,就会把链条分成两段,就是一个简单的两段连续珠子的长度的sg值异或一下,求出sg[n - m]的 阅读全文
摘要:
题目链接:HDU 2999【Stone Game, Why are you always there?】 思路 由于只能取连续的一段石子,当取出的石子是这段石子的中间一部分时就相当于将一段石子分成两段石子,简单异或一下求SG值就行了 代码 int sg[N], vis[N], a[N]; int n 阅读全文
摘要:
比赛链接:Codeforces Round 964 (Div. 4) A 思路 水题 代码 #include <iostream> using namespace std; #define ll long long inline int read(void) { int x = 0, f = 1; 阅读全文
摘要:
题目链接:CodeForces 1619D【New Year's Problem】 思路 可以因为最多只能逛n - 1个商店,当n - 1大于等于m的时候,所有朋友都能取最大值,否则至少有两个人要选择相同的商店,所以依次枚举两个人选择同一个商店,其他人选择喜悦值最大的商店。 代码 #include 阅读全文
摘要:
题目链接:HDU 4334【Trouble】 思路 哈希+贪心,直接将五个数组分成两个或者三个数组,此时数组相加的时间复杂度为O(n2)或者O(n3),然后双重循环数组e和s1并遍历找出s2中是否有满足题意的元素,这个步骤可以使用二分代替还能降低时间复杂度。 代码 #include <iostrea 阅读全文