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

asp网站建设教程如何创建网站

asp网站建设教程,如何创建网站,织梦网站后台使用说明书,网站会员体系[HNOI2002] 公交车路线 题目描述 在长沙城新建的环城公路上一共有 8 8 8 个公交站,分别为 A、B、C、D、E、F、G、H。公共汽车只能够在相邻的两个公交站之间运行,因此你从某一个公交站到另外一个公交站往往要换几次车,例如从公交站 A 到公交…

[HNOI2002] 公交车路线

题目描述

在长沙城新建的环城公路上一共有 8 8 8 个公交站,分别为 A、B、C、D、E、F、G、H。公共汽车只能够在相邻的两个公交站之间运行,因此你从某一个公交站到另外一个公交站往往要换几次车,例如从公交站 A 到公交站 D,你就至少需要换 3 3 3 次车。

Tiger 的方向感极其糟糕,我们知道从公交站 A 到公交 E 只需要换 4 4 4 次车就可以到达,可是 tiger 却总共换了 n n n 次车,注意 tiger 一旦到达公交站 E,他不会愚蠢到再去换车。现在希望你计算一下 tiger 有多少种可能的乘车方案。

输入格式

仅有一个正整数 n n n,表示 tiger 从公交车站 A 到公交车站 E 共换了 n n n 次车。

输出格式

输出一个正整数表示方案数,由于方案数很大,请输出方案数除以 1000 1000 1000 后的余数。

样例 #1

样例输入 #1

6

样例输出 #1

8

提示

8 条路线分别是:

(A→B→C→D→C→D→E),(A→B→C→B→C→D→E),

(A→B→A→B→C→D→E),(A→H→A→B→C→D→E),

(A→H→G→F→G→F→E),(A→H→G→H→G→F→E),

(A→H→A→H→G→F→E),(A→B→A→H→G→F→E)。

数据范围

4 ≤ n ≤ 1 0 7 4\le n\le10^7 4n107

思路

  • 对于这种求最优方案数,我们很容易发现,对于任意一点,我们设 f i , j f_{i,j} fi,j 为所有走了 i i i 次,到达 j j j 点。
  • 状态转移: f i , j = f i − 1 , j − 1 + f i − 1 , j + 1 f_{i,j}=f_{i-1,j-1}+f_{i-1,j+1} fi,j=fi1,j1+fi1,j+1
  • 如果我们把次数这一维度暂时不看,你不发现这很像是斐波那契数列吗,而且本道题的 n n n 特别大,因此我们得加速,就可以想到矩阵加速。
  • 因此我们可以这样做,把第一维度的次数放到指数上去。也就是最终我们就是求:
    ( f A , f B , f C , . . . f H ) = ( f A , f B , f C , . . . f H ) A n (f_A,f_B,f_C,...f_H)=(f_A,f_B,f_C,...f_H)A^{n} (fA,fB,fC,...fH)=(fA,fB,fC,...fH)An,其中 A A A 矩阵为我们构造的矩阵, n n n 为次数,初始的时候我们是从 f A f_A fA 开始,因此我们最开始设 f A = 1 f_A=1 fA=1,最后的答案是 f D + f F f_D+f_F fD+fF
  • 那个 A A A 矩阵想必大家也懂得怎么写,就是你得记住这个公式: f j = f j − 1 + f j + 1 f_{j}=f_{j-1}+f_{j+1} fj=fj1+fj+1
  • 在这里插入图片描述

AC 代码

#include<iostream>
#include<algorithm>
#include<cstring>using namespace std;const int N = 8 ,mod=1000;int f1[N];
int A[N][N]={{0, 1, 0, 0, 0, 0, 0, 1},{1, 0, 1, 0, 0, 0, 0, 0},{0, 1, 0, 1, 0, 0, 0, 0},{0, 0, 1, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 0, 0},{0, 0, 0, 0, 0, 0, 1, 0},{0, 0, 0, 0, 0, 1, 0, 1},{1, 0, 0, 0, 0, 0, 1, 0},
};int n;void mul(int c[],int a[],int b[][N]){int temp[N]={0};for(int i=0;i<N;i++){for(int j=0;j<N;j++){temp[i]=(temp[i]+a[j]*b[j][i])%mod;}}memcpy(c,temp,sizeof temp);
}void mul(int c[][N],int a[][N],int b[][N]){int temp[N][N]={0};for(int i=0;i<N;i++){for(int j=0;j<N;j++){for(int k=0;k<N;k++){temp[i][j]=(temp[i][j]+a[i][k]*b[k][j])%mod;}}}memcpy(c,temp,sizeof temp);
}int main(){cin>>n;n--;f1[0]=1;while(n){if(n&1)mul(f1,f1,A);mul(A,A,A);n>>=1;}cout<<(f1[3]+f1[5])%mod;return 0;}
http://www.mmbaike.com/news/62846.html

相关文章:

  • 网站建设公司做销售前景好不好网络广告策划
  • 网站做关键词搜索要好多钱seo网站优化助理
  • 网站做视频转流量网络培训心得体会
  • 企业网站建设费什么软件引流客源最快
  • 龙泉驿疫情最新情况发布搜索引擎优化学习
  • 怎么建设一个自己的网站首页电脑突然多了windows优化大师
  • 克隆网站后怎么做百度官网登录入口手机版
  • 邢台做网站推广如何做百度推广
  • 泉州公司网站模板建站灰色关键词排名优化
  • 门户网站做等保需要备案哪些天津优化网络公司的建议
  • 互联网上市公司排名seo网站优化公司
  • 黄金软件app下载免费安装seo网站优化方案摘要
  • 中文旅游网站模板下载企业营销网站制作
  • 官方网站内容可做证据吗怎么申请一个网站
  • 莱芜网站建设建站优化
  • 网站建设公司运营深圳市seo上词贵不贵
  • 纯静态网站做优化有什么影响1小时快速搭建网站
  • 视频解析网站建设火锅店营销方案
  • 网站后台编辑器不能正常显示百度关键词排名查询工具
  • 郑州官网seo费用网络优化器
  • 汉字域名网站seo系统推广
  • 网站发外链郑州网络推广方法
  • 营口pc网站开发郑州百度seo网站优化
  • 做网站学哪方面知识电商最好卖的十大产品
  • 创建平台网站下载软件seo和点击付费的区别
  • 建设报名系统官网是真的吗上海优质网站seo有哪些
  • 商业网站建设实训指导书seo运营经理
  • 哪些网站权重高什么软件可以找客户资源
  • 网站开发搭建网络营销主要内容
  • wordpress本地调试seo排名优化培训网站