码迷,mamicode.com
首页 > 其他好文 > 详细

二模 (3) day1

时间:2014-09-19 19:15:25      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:sp   算法   r   bs   设计   as   dp   方法   5   

第一题:

题目描述:

一个数列定义如下:f(1) = 1,f(2) = 1,f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7。给定 A,B 和 n 的值,要求计算 f(n)的值。(1≤ A, B ≤1000, 1 ≤n≤100,000,000)。

 

解题过程:

1.方法一:矩阵乘法。

2.方法二:hash。如果 Ak,Ak+1  确定了,那么Ak+2 就确定了,而Ak,Ak+1 的值都是小于7的,所以做个二维hash,记录Ak,Ak+1  第一次出现的位置,就可以判断循环节。

初始得分100。

 


 

第二题:

题目描述:

设 G 为有 n 个顶点的有向无环图,G 中各顶点的编号为 1 到 n,且当<i,j>为 G 中的一条边时有i < j。设 w(i,j)为边<i,j>的长度,请设计算法,计算图 G 中<1,n>间的最长路径。n<=1500

 

解题过程:

1.直接dp,反向存边,F[i]=max{F[j]+w[i][j]}  j<i;

初始得分100.

 


 

第三题:

题目大意:

给出4*4的01矩阵,每次可以选择一个点,把它和它上下左右的点(如果存在) xor 1。

求初始状态到给出状态的最少步数。

 

解题过程:

1.没什么特别地技巧,直接宽搜就好,状态数比较少。用一个int压位保存状态(其实不压也行,空间足够)。hash判重即可。

初始得分100.

 

好水的一天。。用来提高信心了。

二模 (3) day1

标签:sp   算法   r   bs   设计   as   dp   方法   5   

原文地址:http://www.cnblogs.com/vb4896/p/3982069.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!