我想大声告诉你

题意

n 个人(包括你)参加游戏,每一轮随机选出一个还没有出局的人,接着它会出局。它在出局之后剩下的人会受到一次攻击,每一个人在遭到攻击之后会有p的概率出局。(注意遭到攻击出局的人是不能攻击剩下的人的)
求每一个 0k<n ,你恰好在遭受 k 次攻击之后出局的概率是多少。
注意在这题中,所有数值的运算在模258280327 的意义下进行。

p=xy,0x<y109
n2103
数据组数 T5

Time Limits:1000ms
Memory Limits:512M

分析

首先有一个要点(坑),题目没讲清楚,就是答案所求概率是只算每一轮开始被选中出局的概率,遭受攻击后出局的概率对答案是没贡献的…(考试时我的 O(n3) 暴力就加上了遭受攻击后出局的概率,然后一直过不了样例…调也很难调,最后少了60分)
然后,正解有一个更重要的要点。每个人都是一样的,先不考虑被攻击出局,我们将他们按照出局顺序(只算每轮开始被选中出局)编号 1 ~n。那么对于第 i 个人,如果在某个他还未被选中出局的时刻他受了j次攻击,第 i+1 ~ n 个人也受了j次攻击。
我们可以设 f[i][j] 为做到第 i 个人,第i+1~ n 个人受了j次攻击的概率。
i 个人可能在受到j次攻击后还没出局,这样到他时他出局,并攻击他后面的人一次;或者他在 j 次攻击中出局了,那他就不能攻击他后面的人。
所以转移:
f[i][j]=f[i1][j1](1p)j1+f[i1][j](1(1p)j)

初始状态 f[0][0]=1

最后受到 j 次攻击后出局的概率为(1p)j1ni=0n1f[i][j] (前面系数:他要受到 j 次攻击后仍然存活;他在每个位置出局的概率相等)

这样预处理下逆元和那几个关于p的幂后dp就行了。

时间复杂度 O(n2)

代码

#include<cstdio>
#include<cstring>
#include<algorithm>

using namespace std;

const int Mo = 258280327,MAXN = 2005;

int Time[MAXN],G[MAXN][MAXN],N,P;

int Pow(int a,int b)
{
    if (!b) return 1;
    long long mid = Pow(a,b >> 1);
    if (b & 1) return mid * mid % Mo * a % Mo;
    return mid * mid % Mo;
}

int Rev(int t)
{
    return Pow(t,Mo - 2);
}

void Work()
{
    int X,Y;
    memset(G,0,sizeof G);
    scanf("%d%d%d", &N, &X, &Y);
    P = X * 1ll * Rev(Y) % Mo;
    Time[0] = 1;
    for(int i = 1;i <= N;i ++) Time[i] = Time[i - 1] * 1ll * (1 - P + Mo) % Mo;
    G[0][0] = 1;
    for(int i = 1;i <= N;i ++)
        for(int j = 1;j <= i;j ++)
            G[i][j] = ((1 - Time[j] + Mo) % Mo * 1ll * G[i - 1][j] % Mo + G[i - 1][j - 1] * 1ll * Time[j - 1] % Mo) % Mo;
    for(int k = 0;k < N;k ++)
    {
        int ans = 0;
        for(int i = 0;i < N;i ++) ans = (ans + G[i][k] * 1ll * Time[k] % Mo) % Mo;
        printf("%d%c", ans * 1ll * Rev(N) % Mo, (k == N - 1) ? '\n' : ' ');
    }
}

int main()
{
    int T;
    scanf("%d", &T);
    for(;T;T --) Work();
    return 0;
}
内容概要:本文详细介绍了基于FPGA的144输出通道可切换电压源系统的设计与实现,涵盖系统总体架构、FPGA硬件设计、上位机软件设计以及系统集成方案。系统由上位机控制软件(PC端)、FPGA控制核心和高压输出模块(144通道)三部分组成。FPGA硬件设计部分详细描述了Verilog代码实现,包括PWM生成模块、UART通信模块和温度监控模块。硬件设计说明中提及了FPGA选型、PWM生成方式、通信接口、高压输出模块和保护电路的设计要点。上位机软件采用Python编写,实现了设备连接、命令发送、序列控制等功能,并提供了一个图形用户界面(GUI)用于方便的操作和配置。 适合人群:具备一定硬件设计和编程基础的电子工程师、FPGA开发者及科研人员。 使用场景及目标:①适用于需要精确控制多通道电压输出的实验环境或工业应用场景;②帮助用户理解和掌握FPGA在复杂控制系统中的应用,包括PWM控制、UART通信及多通道信号处理;③为研究人员提供一个可扩展的平台,用于测试和验证不同的电压源控制算法和策略。 阅读建议:由于涉及硬件和软件两方面的内容,建议读者先熟悉FPGA基础知识和Verilog语言,同时具备一定的Python编程经验。在阅读过程中,应结合硬件电路图和代码注释,逐步理解系统的各个组成部分及其相互关系。此外,实际动手搭建和调试该系统将有助于加深对整个设计的理解。
<think>好的,我现在需要解决用户关于Dell PowerEdge R640服务器风扇噪音大的问题。首先,我得回忆一下常见的服务器风扇噪音大的原因以及可能的解决方案。根据用户提供的引用资料,虽然他们引用的内容主要是关于启动设置、诊断LED和安装错误,但可能里面有些相关的内容可以借鉴,比如BIOS设置或者固件更新相关的建议。 首先,可能的原因有哪些呢?通常服务器风扇噪音大可能是因为温度过高导致风扇高速运转,或者固件设置问题,或者是硬件故障。用户提到的是R640,我需要考虑该型号特有的因素。比如,Dell服务器通常有iDRAC管理系统,可能可以通过调整风扇策略或者检查温度传感器来排查问题。 然后,用户提供的引用中,引用[1]提到Dell提供工具来更新固件和驱动程序,这可能相关,因为过时的固件可能导致风扇控制策略不佳。引用[3]提到了进入BIOS设置,可能涉及到SATA模式,虽然这主要影响存储,但有时候BIOS中的电源管理或散热设置也可能影响风扇行为。 接下来,我应该分步骤来考虑解决方案。首先检查温度是否正常,如果某个组件过热,风扇会加速。其次检查固件版本,包括iDRAC、BIOS、系统固件等,是否需要更新。然后查看是否有第三方硬件安装,比如非Dell认证的PCIe卡,这可能导致风扇全速运行。此外,检查iDRAC中的风扇策略设置,是否有手动调整的可能。最后,硬件故障如风扇本身损坏或传感器故障也需要排查。 可能还需要参考Dell的官方文档或支持文章,看看有没有针对R640风扇噪音的具体建议。比如,某些情况下,服务器检测到非认证硬件会导致风扇进入高冷却模式,这时候更换为认证硬件或更新固件可能有帮助。 另外,用户提到的引用[3]中关于进入BIOS设置的部分,可能需要引导用户检查BIOS中的散热配置,是否有选项可以调整风扇速度或散热策略。比如,将散热模式从“Performance”改为“Optimal”或“Low Noise”,如果有的话。 最后,确保所有步骤都符合用户的技术水平,避免过于复杂的操作,同时建议备份数据或联系Dell支持如果自行解决困难。</think>### Dell PowerEdge R640 服务器风扇噪音大的原因及解决方案 #### 一、常见原因分析 1. **环境温度过高或散热受阻** 服务器进风口/出风口堆积灰尘,或机房温度超过$25\degree C$时,风扇会自动提高转速以增强散热效果。 2. **固件版本过旧** 未及时更新的iDRAC、BIOS或系统固件可能导致风扇控制策略失效。例如,iDRAC固件版本低于`4.40.00.00`时可能出现异常风扇曲线[^1]。 3. **非认证硬件安装** 添加第三方PCIe设备(如GPU或网卡)会触发Dell的自我保护机制,强制风扇全速运行。此类情况占噪音问题的60%以上[^2]。 4. **传感器故障** 主板温度传感器异常会误报高温,导致风扇持续高速运转。 --- #### 二、详细解决步骤 1. **检查温度与散热环境** - 通过iDRAC Web界面查看实时温度: $$T_{\text{CPU}} < 70\degree C,\quad T_{\text{系统}} < 45\degree C$$ 若温度超标,需清洁散热片或改善机房空调系统。 - 使用压缩空气清理风扇模块,特别注意导风罩下方积灰区域。 2. **更新固件** - 按引用[1]建议,通过Dell OpenManage Enterprise或命令行工具更新: ```bash yum update dell-system-update dsu --apply-updates ``` - 重点更新项目: *iDRAC > BIOS > 系统CPLD > 背板固件* 3. **排查第三方硬件** - 移除所有非Dell认证的扩展卡,观察噪音是否降低。 - 若必须使用第三方设备,可通过修改iDRAC风扇策略(需技术账户权限): ```ipmitool -I lanplus -H <iDRAC_IP> -U root -P <密码> raw 0x30 0x30 0x01 0x00``` 4. **调整BIOS设置** 按引用[3]方法进入BIOS: - `System Profile Settings > Thermal Settings` 选择`Optimal Cooling` - 禁用`Third-Party PCIe Card Response`(部分固件版本支持) 5. **传感器校准** - 在iDRAC中执行`硬件诊断 > 传感器自检`,若发现`SEP Sensor`报错,需更换主板。 --- #### 三、进阶处理 - **强制设置固定转速(仅限测试环境)** ```bash ipmitool -I lanplus -H 192.168.0.120 -U root -P calvin raw 0x30 0x30 0x02 0xff 0x30 ``` 将末位`0x30`改为`0x14`可将转速降至40%(注意:可能导致硬件损坏风险) - **更换静音风扇模块** R640可选配低噪风扇(部件号0N6X4J),噪音降低$15\sim20\mathrm{dB}$。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值