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

网站备案查询站长工具微网站是不是就是手机网站

网站备案查询站长工具,微网站是不是就是手机网站,网站建设及外包,营销型网站设计价格CF传送门 洛谷传送门 【题目分析】 在zxy大佬的讲解下终于懂了这道题的做法了qwq。。。 首先根据题意#xff0c;出发点不一定在特殊点上#xff0c;但第一次操作后#xff0c;之后所有的操作都是在特殊点上#xff0c;所以先考虑从线上出发的最大概率#xff0c;再加一步… CF传送门 洛谷传送门 【题目分析】 在zxy大佬的讲解下终于懂了这道题的做法了qwq。。。 首先根据题意出发点不一定在特殊点上但第一次操作后之后所有的操作都是在特殊点上所以先考虑从线上出发的最大概率再加一步即可得到从点出发的最大概率二者取较大值即可。 记数组f[i][j][k]表示从i点走k步到j点的概率所以转移方程就出来了 然后发现这个形式其实就是矩阵乘法所以可以利用矩阵快速幂优化计算出走2^i步的概率。 但每次都进行一次快速幂的计算复杂度为O(n^3log(q))所以继续优化。 因为我们只需要考虑最后到达t的最大概率所以在进行矩阵乘法的时候很多位置都是没用的所以考虑将初始矩阵简化为一个1*n的矩阵表示走0步到达t的概率显然只有base[t]1其他位置均为0。 然后将操作数进行二进制拆分进行左乘因为初始矩阵只有1行所以不管乘几次都只有一行这样直接优化了一个n的复杂度。 从直线开始就是比从点开始少了一步因为要先走到点上所以就先处理从直线开始走的情况统计答案最后再计算一次就可以得到从点开始走的概率。 考虑构造f[i][j][0]显然从i点走一步到达j点的概率为(1/(经过i点直线数)*直线i,j上的点数)根据这个构造即可。 然后就是各种小细节。。。 1.直线去重这样可以避免进行重复计算。 2.将一个vector的值赋给另一个vector的时候加个传址符会快一点。 3.在计算f数组和base数组的时候如果f[i][j][k]或g[i]已经小于1e-6了那么其实并没有必要继续计算下去了因为精度太小反而可能会爆炸而且题目也说了误差在1e-6以内即可这样大大减少运行时间。 【代码~】 #includebits/stdc.h using namespace std; const int MAXN201; const int MAXM15;int n,q; int x[MAXN],y[MAXN]; int vis[MAXN],cnt[MAXN]; double ans; double f[MAXN][MAXN][MAXM1]; double Base[MAXN],zy[MAXN]; vectorint point[MAXN][MAXN]; vectorpairint,int line; inline int Read(){int i0,f1;char c;for(cgetchar();(c9||c0)c!-;cgetchar());if(c-)f-1,cgetchar();for(;c0c9;cgetchar())i(i3)(i1)c-0;return i*f; }bool check(int a,int b,int c){return (y[b]-y[a])*(x[c]-x[a])(y[c]-y[a])*(x[b]-x[a]); }int main(){nRead();for(int i1;in;i)x[i]Read(),y[i]Read();for(int i1;in;i){memset(vis,0,sizeof(vis));for(int j1;jn;j){if(ij)continue;if(vis[j])continue;cnt[i];for(int k1;kn;k){if(check(i,j,k)){point[i][j].push_back(k);vis[k]1;}}line.push_back(make_pair(point[i][j][0],point[i][j][1]));}}sort(line.begin(),line.end());line.erase(unique(line.begin(),line.end()),line.end());int siz1line.size();for(int i0;isiz1;i){vectorint vecpoint[line[i].first][line[i].second];int siz2vec.size();for(int j0;jsiz2;j){for(int k0;ksiz2;k){f[vec[j]][vec[k]][0]1.0/siz2*1.0;}}}for(int i1;in;i){for(int j1;jn;j){f[i][j][0]/cnt[i];}}for(int i1;iMAXM;i){for(int j1;jn;j){for(int k1;kn;k){if(f[j][k][i-1]1e-6){for(int t1;tn;t){f[j][t][i]f[j][k][i-1]*f[k][t][i-1];}}}}}qRead();while(q--){int tRead(),stepRead()-1;memset(Base,0,sizeof(Base));Base[t]1;for(int i0;iMAXM;i){if((1i)step)break;if((1i)step){memset(zy,0,sizeof(zy));for(int j1;jn;j){if(Base[j]1e-6){for(int k1;kn;k){zy[k]f[k][j][i]*Base[j];}}}memcpy(Base,zy,sizeof(zy));}}ans0.0;int sizline.size();for(int i0;isiz;i){vectorint vecpoint[line[i].first][line[i].second];double tot0.0;int siz2vec.size();for(int j0;jsiz2;j){totBase[vec[j]];}tot/1.0*siz2;ansmax(ans,tot);}memset(zy,0,sizeof(zy));for(int i1;in;i){if(Base[i]1e-6){for(int j1;jn;j){zy[j]Base[i]*f[j][i][0];}}}memcpy(Base,zy,sizeof(zy));for(int i1;in;i)ansmax(ans,Base[i]);printf(%.10lf\n,ans);}return 0; }   转载于:https://www.cnblogs.com/Ishtar/p/10010705.html
http://www.zqtcl.cn/news/499798/

相关文章:

  • 电子商务网站购物车怎么做网站站点创建成功是什么意思
  • 如何做招聘网站的评估新浪微博可以做网站吗
  • 加强网站建设的制度wordpress如何清空
  • 轻松筹 的网站价格做网站建设意识形态
  • 有.net源码如何做网站湖南宣传片制作公司
  • dede网站模板怎么安装教程青岛需要做网站的公司
  • 静态双语企业网站后台源码北京网站关键词优化
  • 石家庄手机网站建设公司wordpress侧边栏显示子分类文字数
  • 公司网站客户案例个人做 网站2019
  • 个人网站怎么申请销售策划
  • 网站被黑 禁止js跳转企业为什么要建立集团
  • 建设网站的各种问题上海品牌女装排行榜前十名
  • seo优化搜索引擎网站优化推广网络关键词优化-乐之家网络科技商城网站备案能通过吗
  • 江门网站建设推广策划网站改版的宣传词
  • 网站建设三大部分国外购物平台网页界面设计
  • 公司商城网站建设方案wordpress旗舰
  • 京东云服务器怎么做网站企业宣传网站怎么做
  • 如何自学网站建设云南网爱我国防知识竞赛
  • 什么网站可以做投资设计接单
  • 网站内容批量替换桐乡网站制作
  • 怎么免费做网站教程制作xml网站地图文件
  • 广西智能网站建设哪家好网红商城
  • 关于建设网站的情况说明书wordpress 在线检测
  • 帝国cms 网站迁移错版怎样做心理咨询网站
  • 烟台建网站wordpress重写规则
  • 上海网站建设怎么赚钱平顶山网站建设服务公司
  • 导航网站如何被百度收录广告设计在线设计
  • 雪域什么网站是做电影的苏州优化方式
  • 设计网站多少钱手机百度助手
  • 驾校网上约车网站开发不会做网站如何做seo