题目大意:给定两个矩阵,求最大公共子正方形边长
首先二分答案 然后Check的时候先把A矩阵的所有边长为x的子正方形存在哈希表里 然后枚举B矩阵的每个子正方形查找
注意二维哈希的时候横竖用的两个BASE不能一样 否则当两个矩阵关于对角线对称的时候会判断为相等
尼玛我的哈希表居然比map慢……不活了
#include
#include
#include
#include
#include
#...
分类:
Web程序 时间:
2014-11-10 13:51:02
阅读次数:
215
扩展GCD:
枚举a,扩展GCD求b,再暴力检查
Disgruntled Judge
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 329 Accepted Submission(s): 142
Pr...
分类:
其他好文 时间:
2014-11-09 23:47:22
阅读次数:
341
题目链接:http://acm.nefu.edu.cn/JudgeOnline/status.php?problem_id=116&order=1解题思路:求最小公倍数#includelong long gcd(long long a,long long b){ if(b==0) return a;...
分类:
其他好文 时间:
2014-11-09 22:06:55
阅读次数:
136
关于线程的概念不在赘述,网上讲的很详细,IOS中主要提供了3种方式实现多线程,分别是NSThread,NSOperation以及GCD,这里我们总结下最基础的NSThread1 线程创建可以使用NSthread提供的方法创建一个新的线程,创建方法有如下两种a.+ (void)detachNewThr...
分类:
移动开发 时间:
2014-11-09 16:39:02
阅读次数:
303
相比较NSOperation和NSThread,GCD提供了更简单的操作实现多线程,多线程下也无需创建自动释放池,而且GCD开发只有两个步骤1 创建队列2 提交任务到队列队列GCD创建的队列有两种,一种是串行队列,一种是并行队列,在串行队列中每次只执行一个任务,依次执行下去,而在并行队列中每次可以同...
分类:
移动开发 时间:
2014-11-09 16:33:50
阅读次数:
276
ZOJ上面这题内存限制太严格,裸的树套树主席树搞法过不去,BZOJ上面这个放的比较松,可以过。其实就是利用树状数组维护n颗主席树,然后利用前缀和性质求解第k大。#include #include #include #include #include #include #include #includ...
分类:
编程语言 时间:
2014-11-09 12:29:33
阅读次数:
315
1 #include 2 using namespace std; 3 long long m,cnt1,cnt2,x,y; 4 long long gcd(long long a,long long b) 5 { 6 if (b==0) return a; 7 return gc...
分类:
其他好文 时间:
2014-11-09 12:27:11
阅读次数:
161
平常我们使用拓展欧几里德算法求pm + qn = gcd(m, n)这种表示时,一般都会选择递归的方式来实现,因为欧几里得算法的递归深度最多也只有O(lgn), according to lame's theorem,所以这个递归用栈是可以忽略的。但其实只需要循环就可以求出一组pm + qn = g...
分类:
编程语言 时间:
2014-11-08 23:33:45
阅读次数:
267
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1019解题思路:lcm(a,b)=a*b/gcd(a,b)反思:最开始提交的时候WA,以为是溢出了,于是改成了long long,还是WA,于是就不明白了,于是就去看了discuss,发现应该这样来写 l...
分类:
其他好文 时间:
2014-11-08 18:14:46
阅读次数:
187
Description 给定一个边带正权的连通无向图G=(V,E),其中N=|V|,M=|E|,N个点从1到N依次编号,给定三个正整数u,v,和L (u≠v),假设现在加入一条边权为L的边(u,v),那么需要删掉最少多少条边,才能够使得这条边既可能出现在最小生成树上,也可能出现在最大生成树上?Inp...
分类:
其他好文 时间:
2014-11-08 18:06:16
阅读次数:
260