摘要: 颓废的一个下午,一直在切水题,(ˉ▽ ̄~)首先如果这些点是对称的话,那么它们的对称轴就是x = m,m是横坐标的平均值。把这些点放到一个集合里,然后扫描每个点,计算出它关于x = m的对称点,看这个点是否在集合里面。如果有一个不在的话,说明不能构成对称图形。 1 #include 2 #inclu... 阅读全文
posted @ 2015-04-24 17:01 AOQNRMGYXLMV 阅读(660) 评论(0) 推荐(0) 编辑
摘要: 今天下午略感无聊啊,切点水题打发打发时间,=_=||把所有字符串插入到一个set中去,然后对于每个字符串S,枚举所有可能的拆分组合S = A + B,看看A和B是否都在set中,是的话说明S就是一个复合词。 1 #include 2 #include 3 #include 4 #include... 阅读全文
posted @ 2015-04-24 15:53 AOQNRMGYXLMV 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 看到大神说location的值不会超过1000,所以这就简单很多了,用一个deg数组记录下来每个点的度,出度-1,入读+1这样。最后判断每个点的度是否为0即可。至于为什么会这样,据说是套数据套出来的,比如在代码里加一句if(a >= 1000) for(;;),get新技能!如果按正常来做的话,我能... 阅读全文
posted @ 2015-04-24 15:31 AOQNRMGYXLMV 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 直接用STL里的queue模拟即可。 1 #include 2 #include 3 using namespace std; 4 5 const int maxn = 60; 6 int discarded[maxn], cnt; 7 8 int main() 9 {10 int ... 阅读全文
posted @ 2015-04-24 13:45 AOQNRMGYXLMV 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 大白书上P42那个计算器的题目就用到了这个办法,Floyd判圈法。当然,用STL里的map也是可以的。 1 #include 2 #include 3 4 const int maxn = 20; 5 int n; 6 int a[maxn], b[maxn], c[maxn]; 7 8 v... 阅读全文
posted @ 2015-04-24 13:16 AOQNRMGYXLMV 阅读(378) 评论(0) 推荐(0) 编辑
摘要: 话说STL的I/O流用的还真不多,就着这道题熟练一下。用了两个新函数:cout 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 using namespace std;10 ... 阅读全文
posted @ 2015-04-24 11:42 AOQNRMGYXLMV 阅读(312) 评论(0) 推荐(0) 编辑
摘要: 将所有后缀按照字典序排序后,每新加进来一个后缀,它将产生n - sa[i]个前缀。这里和小罗论文里边有点不太一样。height[i]为和字典序前一个的LCP,所以还要减去,最终累计n - sa[i] - height[i]即可。 1 #include 2 #include 3 #include ... 阅读全文
posted @ 2015-04-24 09:23 AOQNRMGYXLMV 阅读(198) 评论(0) 推荐(0) 编辑