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

网站开发程序员招聘应届生简历模板

网站开发程序员招聘,应届生简历模板,17年哪个网站做h5最好,wordpress 判断是否为首页P4564 [CTSC2018]假面 首先容易看出结界技能对第二问敌方剩余生命值期望没有影响。 如何求出第iii个人的剩余生命值期望#xff1f; 只需要根据Ei∑j0aijfi,jE_i\sum_{j0}^{a_i}jf_{i,j}Ei​∑j0ai​​jfi,j​ 预处理fi,jf_{i,j}fi,j​#xff1a;第iii个人的剩余生命值为j…P4564 [CTSC2018]假面 首先容易看出结界技能对第二问敌方剩余生命值期望没有影响。 如何求出第iii个人的剩余生命值期望 只需要根据Ei∑j0aij×fi,jE_i\sum_{j0}^{a_i}j×f_{i,j}Ei​∑j0ai​​j×fi,j​ 预处理fi,jf_{i,j}fi,j​第iii个人的剩余生命值为jjj的期望aia_iai​表示最初生命值 由于每次锁定技能只能明确对一名地方单位造成攻击ppp概率击中而qqq概率不中每次只需要O(ai)O(a_i)O(ai​)的代价维护fi,jf_{i,j}fi,j​总的时间复杂度O(Qm)O(Qm)O(Qm) 转移方程fi,jpfi,j1qfi,jf_{i,j}pf_{i,j1}qf_{i,j}fi,j​pfi,j1​qfi,j​注意fi,0pfi,1fi,0f_{i,0}pf_{i,1}f_{i,0}fi,0​pfi,1​fi,0​ 对于第二个技能想要知道命中uuu的概率我们需要知道除了u之外还有jjj个人存活下不妨叫做gu,jg_{u,j}gu,j​。 只需要把除了uuu的其他敌人vvv拿出来跑一遍背包即可注意逆序 gu,jalivev×gu,j−1deadv×gu,jg_{u,j}\text{alive}_v×g_{u,j-1}\text{dead}_v×g_{u,j}gu,j​alivev​×gu,j−1​deadv​×gu,j​ 显然alivev1−fv,0\text{alive}_v1-f_{v,0}alivev​1−fv,0​v存活下来的概率deadvfv,0\text{dead}_vf_{v,0}deadv​fv,0​死了的概率。 对于第二个技能范围的每个敌人我们都需要预处理一下gu,jg_{u,j}gu,j​数组也就是O(n3)O(n^3)O(n3)的复杂度第二个技能总时间复杂度O(Cn3)O(Cn^3)O(Cn3)代码如下这时候我们能够拿到707070ptsO(QmCn3)O(QmCn^3)O(QmCn3) #includecstring #includeiostream using namespace std; using lllong long; constexpr ll mod998244353; ll qmi(ll a,ll b) {ll res1;while(b){if(b1) resres*a%mod;aa*a%mod;b1;}return res; } ll inv[205],a[205],b[205]; ll f[205][105];//f[i][j]第i个人还有j滴血的概率 ll g[205];//将u那一维压缩了 int n,m; void attack(int i,ll p)//O(qc) {ll q(1-pmod)%mod;for(int j0;ja[i];j){if(j)f[i][j](p*f[i][j1]%modq*f[i][j]%mod)%mod;elsef[i][j](p*f[i][j1]%modf[i][j])%mod;} } void solve(int k)//O(n^3) {for(int u1;uk;u)//枚举范围呢的每一个敌人{memset(g,0,sizeof g);g[0]1ll;for(int i1;ik;i)//除了u的敌人跑一边背包{if(ui) continue;ll alive((1ll-f[b[i]][0])%modmod)%mod;ll dead((1ll-alive)%modmod)%mod;for(int ji;j0;j--)//逆序{if(j) g[j](g[j]*deadg[j-1]*alive%mod)%mod;else g[j]g[j]*dead%mod;}}ll ans0;for(int j0;jk;j) ans(ansg[j]*inv[j1]%mod)%mod;ansans*((1ll-f[b[u]][0])%modmod)%mod;coutans ;}cout\n; } int main() {ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);cinn;for(int i1;in;i){cina[i];inv[i]qmi(i,mod-2);f[i][a[i]]1;}cinm;while(m--){int op;cinop;if(op0){int id;ll u,v;ciniduv;attack(id,1ll*u*qmi(v,mod-2)%mod);}else{int k;cink;for(int i1;ik;i) cinb[i];solve(k);}}for(int i1;in;i){ll ans0;for(int j1;ja[i];j)ans(ansj*f[i][j]%mod)%mod;coutans ;}return 0; }考虑优化显然我们TLE是由于第二个操作如果每次枚举然后跑背包似乎有些冗余。我们另设gjg_jgj​表示jjj个人或者的概率而用hu,jh_{u,j}hu,j​表示除了u之外还有jjj个人存活下也就是上面的gu,jg_{u,j}gu,j​有下面递推 gjaliveu×hu,j−1deadu×hu,jg_j\text{alive}_u×h_{u,j-1}\text{dead}_u×h_{u,j}gj​aliveu​×hu,j−1​deadu​×hu,j​ 于是有hu,jgj−aliveu×hu,j−1deaduh_{u,j}\frac{g_j-\text{alive}_u×h_{u,j-1}}{\text{dead}_u}hu,j​deadu​gj​−aliveu​×hu,j−1​​ 于是我们只需要O(n2)O(n^2)O(n2)预处理gjg_jgj​然后枚举uuu线性求出hu,jh_{u,j}hu,j​同样时间复杂度O(n2)O(n^2)O(n2)那么技能二时间复杂度O(Cn2)O(Cn^2)O(Cn2) 注意gjaliveu×hu,j−1,deadu0g_j\text{alive}_u×h_{u,j-1},\text{dead}_u0gj​aliveu​×hu,j−1​,deadu​0 即存在hu,jgj1h_{u,j}g_{j1}hu,j​gj1​ 总时间复杂度O(QmCn2)O(QmCn^2)O(QmCn2) #includecstring #includeiostream using namespace std; using lllong long; constexpr ll mod998244353; ll qmi(ll a,ll b) {ll res1;while(b){if(b1) resres*a%mod;aa*a%mod;b1;}return res; } ll inv[205],a[205],b[205]; ll f[205][105]; ll g[205],h[205];//h同样可以少一维 int n,m; void attack(int i,ll p)//O(qc) {ll q(1-pmod)%mod;for(int j0;ja[i];j){if(j)f[i][j](p*f[i][j1]%modq*f[i][j]%mod)%mod;elsef[i][j](p*f[i][j1]%modf[i][j])%mod;} } void solve(int k) {memset(g,0,sizeof g);g[0]1ll;for(int i1;ik;i)//预处理 g{ll alive((1ll-f[b[i]][0])%modmod)%mod;ll dead((1ll-alive)%modmod)%mod;for(int ji;j0;j--){if(j) g[j](g[j]*deadg[j-1]*alive%mod)%mod;else g[j]g[j]*dead%mod;}}for(int u1;uk;u){ll ans0;ll alive((1ll-f[b[u]][0])%modmod)%mod;ll dead((1ll-alive)%modmod)%mod;memset(h,0,sizeof h);if(alive!1)//1-dead ! 0{ll invdqmi(dead,mod-2);h[0]g[0]*invd%mod;for(int j1;jk;j)h[j](g[j]-alive*h[j-1]%modmod)%mod*invd%mod;}else//dead1{for(int j0;jk;j)h[j]g[j1];}for(int j0;jk;j) ans(ansh[j]*inv[j1]%mod)%mod;ansans*alive%mod;coutans ;}cout\n; } int main() {ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);cinn;for(int i1;in;i){cina[i];inv[i]qmi(i,mod-2);f[i][a[i]]1;}cinm;while(m--){int op;cinop;if(op0){int id;ll u,v;ciniduv;attack(id,1ll*u*qmi(v,mod-2)%mod);}else{int k;cink;for(int i1;ik;i) cinb[i];solve(k);}}for(int i1;in;i){ll ans0;for(int j1;ja[i];j)ans(ansj*f[i][j]%mod)%mod;coutans ;}return 0; }要加油哦~
http://www.sadfv.cn/news/389556/

相关文章:

  • 四川杰新建设工程网站wordpress 数据表 插件
  • 宁波本地网站排行沈阳seo团队
  • 产品展示网站建设第三方小程序平台
  • 南京软月网站建设公司推荐一些高清1080p的浏览器
  • 做内容网站深圳百度推广属于哪家公司
  • 左侧导航栏网站模板卡盟网站怎么做
  • 苏州公司建设网站制作企业信用信息网查询系统官网
  • wordpress 视频站模板下载失败石家庄企业建站
  • 哪有做建筑设计的网站医药医疗行业网站建设
  • 公司网站建设 邮箱寻找做电影网站团队合作
  • 一个ip怎么做多个网站建立网站的第一步是建立什么
  • 无锡cms建站angular2.0网站制作
  • 石家庄网站建设全包一个公司可以做几个网站
  • 企业网站建设费用大约多少钱中国it企业排行榜
  • 网站建设自查报告兴安盟seo
  • 企业网站建设cms站继电器做网站
  • 回收做哪个网站好些厦门博客网站制作
  • 网站做广告如何做帐陵水网站建设哪家专业
  • 网站建设公司专业松江做网站价格
  • 网站稳定性不好的原因商城类型的网站怎么做
  • 怎么安装百度河北seo网站开发
  • python做网站 jsp网站关于asp sql网站开发的书籍
  • 做网站多少钱 优帮云湖北网络建设公司网站
  • 网站建设最简单的教程重庆装修公司口碑排名
  • 烟台网站建设方案报价网站打开空白 重启iis就好了
  • 吉祥物设计网站做网站延期交付了
  • 建设一个网站大概多少钱住房和城乡建设部网站质保金
  • 画家网站建设网站描述怎么写比较好
  • 网站如何设置广告wordpress视频全屏
  • 做一个网站的费用构成wordpress网站不稳定