当前位置: 首页 > news >正文

抖音网站九易建网站的建站流程

抖音网站,九易建网站的建站流程,wordpress安装方式,网校培训题:爬树的甲壳虫 题意: 现在有一个甲壳虫,它可以从树的i−1i-1i−1高度爬到树的iii高度。但是爬上去之后就会以pip_{i}pi​的概率从树上掉到0高度,则以1−pi1-p{i}1−pi的概率掉不下来。爬行一个高度花费一个时间1,问从…

:爬树的甲壳虫
题意: 现在有一个甲壳虫,它可以从树的i−1i-1i1高度爬到树的iii高度。但是爬上去之后就会以pip_{i}pi的概率从树上掉到0高度,则以1−pi1-p{i}1pi的概率掉不下来。爬行一个高度花费一个时间1,问从0爬到高度nnn的期望时间是多少?
通过题意描述可以简单的写出dpdpdp方程,设dp[i]dp[i]dp[i]为从高度iii爬到高度nnn所需要花费的时间。
dp[i−1]=pidp[0]+(1−pi)dp[i]+1dp[i-1]=p_{i}dp[0]+(1-p_{i})dp[i]+1dp[i1]=pidp[0]+(1pi)dp[i]+1
其中111是必须要花费的时间,剩下的都是后续时间。
如果把dpdpdp设置成从0高度到达i的时间就列不出来,不知道咋写。
但是写出来这个方程需要进行进一步推导,容易得出来两个式子:
dp[n−1]=pndp[0]+(1−pn)dp[n]+1dp[n-1]=p_{n}dp[0]+(1-p_{n})dp[n]+1dp[n1]=pndp[0]+(1pn)dp[n]+1
dp[0]=p1dp[0]+(1−p1)dp[1]+1dp[0]=p_{1}dp[0]+(1-p_{1})dp[1]+1dp[0]=p1dp[0]+(1p1)dp[1]+1

dp[n]=0dp[n]=0dp[n]=0,所以
dp[n−1]=pndp[0]+1dp[n-1]=p_{n}dp[0]+1dp[n1]=pndp[0]+1

以此类推,就会发现,dp[1]dp[1]dp[1]可以表示成k×dp[0]+bk \times dp[0]+bk×dp[0]+b的形式.
接下来设新的dpdpdpf[i][0]f[i][0]f[i][0]f[i][1]f[i][1]f[i][1],并且f[i][0]f[i][0]f[i][0]iii状态下的kkkf[i][1]f[i][1]f[i][1]iii状态下的bbb。进行下面的状态转移:

for (int i = n - 2; i >= 0; i--){f[i][0] = ((ll)f[i + 1][0] * (edge[i+1].second)%mod + (ll)edge[i + 1].first)%mod;f[i][1] = (((ll)f[i + 1][1] * (edge[i + 1].second)%mod) + (ll)1)%mod;}

其中edge[i].first=pi;edge[i].second=1−piedge[i].first=p_{i};edge[i].second=1-p_{i}edge[i].first=pi;edge[i].second=1pi

代码:

#include<iostream>
#include<cstdio>
#include<vector>
using namespace std;
typedef long long ll;
vector<pair<int, int>> edge;
const int length = 1e5 + 5;
int mod = 998244353;
int dp[length][2];int rev1(int x)
{int t = mod - 2;int ans = 1;while (t){if (t % 2 == 1){ans = (ll)ans * x%mod;}x = (ll)x*x%mod;t = t >> 1;}return ans;
}
void opr()
{for (int i = 0; i < edge.size(); i++){int a = edge[i].first;int b = edge[i].second;int tmp = (ll)a * rev1(b)%mod;edge[i].first = tmp;//p_{i}edge[i].second = (1ll - tmp + mod) % mod;//1-p_{i}}
}
int main(void)
{int n;scanf_s("%d", &n);for (int i = 0; i < n; i++){int x1, y1;scanf_s("%d%d", &x1, &y1);edge.push_back({ x1,y1 });}opr();//把edge处理成mod p的pi和(1-pi)的形式edge.insert(edge.begin(),{ 0,0 });dp[n - 1][0] = edge[n].first;dp[n - 1][1] = 1;for (int i = n - 2; i >= 0; i--){dp[i][0] = ((ll)dp[i + 1][0] * (edge[i+1].second)%mod + (ll)edge[i + 1].first)%mod;dp[i][1] = (((ll)dp[i + 1][1] * (edge[i + 1].second)%mod) + (ll)1)%mod;}int ans = (ll)dp[0][1]*rev1(1 - dp[0][0] + mod)%mod;printf("%d",ans);
}
http://www.lbrq.cn/news/2783143.html

相关文章:

  • 做搜索网站能发财吗专业seo培训学校
  • 常州网站制作it培训学校it培训机构
  • 网站开发使用什么技术百度分析工具
  • 镇江网站建设门户报价公司seo是什么意思
  • 做公司网站哪家好 上海怎么提升关键词的质量度
  • 024 网站推广今天热点新闻事件
  • 山西网站建设公司排名百度老年搜索
  • 中国建设银行个人网站公关服务
  • 保定 网站游戏推广代理app
  • 购物网站建设要多少钱外链代发
  • 做澳洲ets上什么网站百度智能云
  • 给老外做兼职的网站郑州搜狗关键词优化顾问
  • 疫情地区查询最新福州网站seo
  • 做网站app 需要多少钱推广普通话心得体会
  • 给网站做备案免费建网站哪家好
  • 以小说名字做网站的小说网各引擎收录查询
  • 网站备案成功后怎么办营销网络推广哪家好
  • 服装网站建设策划书友情链接网站源码
  • 我国企业网站的建设情况济南头条今日新闻
  • 自己建一个网站广州谷歌优化
  • 流行的网站建设技术有哪些日照网络推广公司
  • vps除了做网站还能做什么营销方式和营销策略
  • 如何将自己做的网站推广出去平台推广员是做什么的
  • 北京做网站的公司哪家好市场调研流程
  • 电商网站建设方向百度一下电脑版首页网址
  • 找个人做网站上海网站seo
  • 网站建设运营的灵魂是什么意思有效的网站推广方式
  • 想建设一个网站自己接一些小活软文
  • 做韩国护的网站seo课程培训要多少钱
  • 专业做网站哪里有外贸软件排行榜
  • InfoNES模拟器HarmonyOS移植指南
  • consul-基础概念
  • 微服务-06.微服务拆分-拆分原则
  • AI应用商业化加速落地 2025智能体爆发与端侧创新成增长引擎
  • Effective C++ 条款49:了解new-handler的行为
  • 【Python语法基础学习笔记】条件表达式和逻辑表达式