摘要: 题目先上一个链接:十个利用矩阵乘法解决的经典题目这个题目和第二个类似由于矩阵乘法具有结合律,因此A^4 = A * A * A * A = (A*A) * (A*A) = A^2 * A^2。我们可以得到这样的结论:当n为偶数时,A^n = A^(n/2) * A^(n/2);当n为奇数时,A^n = A^(n/2) * A^(n/2) * A (其中n/2取整)。这就告诉我们,计算A^n也可以使用二分快速求幂的方法。例如,为了算出A^25的值,我们只需要递归地计算出A^12、A^6、A^3的值即可。根据一些结果,我们可以在计算过程中不断取模,避免高精度运算。思路:如果直接相乘的话,时间复杂度 阅读全文
posted @ 2014-04-01 21:00 水门 阅读(311) 评论(0) 推荐(0) 编辑
摘要: 题目上次比赛的题目,好长时间了。这几天感冒了很难受, 直到现在才整理,上次比赛的时候,出了各种错误, ,,,样例都没过,题目读的也很差,今天做的时候,看了一下网上的,发现一个代码特别简洁,学习了一下。不过,在hdu交的时候,交c++会编译错误,不知道怎么回事,两次了,G++能过。题意:给n个字符串和它们代表的值,求下面m个式子是否成立。字符串对应的值有一位小数, 式子上的值是整数 (比赛的时候根本 没注意这个) 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 using namespace s... 阅读全文
posted @ 2014-04-01 01:42 水门 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 因为感觉比较有用。这几次比赛,用过几次,所以写个程序,总结一下。如果用sscanf(s, "%d.%d", &a, &b); 的时候,一定要注意是否s里一定有小数点。 1 #include 2 #include 3 using namespace std; 4 5 int main() 6 {... 阅读全文
posted @ 2014-04-01 00:48 水门 阅读(142) 评论(0) 推荐(0) 编辑