摘要: 这道题被我秒了是我太强了还是这道题太水了 苹果在树枝上,然后用子树更新节点的f数组即可。 code 1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include<vector> 5 using namespace std 阅读全文
posted @ 2019-10-14 23:06 TIH_HIT 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 因为每个W被有效利用一次,共logmaxm次,又每次都要查很多可能有重叠的区间,所以可以每次求前缀和,从而加速每次查询。 一开始并没有想到用前缀和,因为没有注意到每次查询有大量重复计算及本题可用两个前缀和处理的性质。 阅读全文
posted @ 2019-10-13 19:12 TIH_HIT 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 题目背景 东方CannonBall(译名东方大炮弹)是近期发布的第一款获得ZUN授权的商业东方二次创作手机游戏,游戏关卡中玩家在类似大富翁的棋盘上与CPU或是玩家进行对战。 东方CannonBall(译名东方大炮弹)是近期发布的第一款获得ZUN授权的商业东方二次创作手机游戏,游戏关卡中玩家在类似大富 阅读全文
posted @ 2019-10-13 14:41 TIH_HIT 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 模板,注意有个地方打错好多次了: for(int j = 0;j < scc[i].size();j++)——是j++不是i++!!! 1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include<vector> 5 u 阅读全文
posted @ 2019-10-12 22:36 TIH_HIT 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 很强的高精 唐神的板子好用又好看 %Candy? 1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include<algorithm> 5 6 using namespace std; 7 8 const int B = 阅读全文
posted @ 2019-10-12 21:39 TIH_HIT 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 1.在微型计算机中,应用最普遍的字符编码是() A.BCD码 B.ASCI码 C.汉字编码 D补码 ans:B 9.下列度量单位中,用来度量计算机运算速度的是() A.MB/S B. MIPS C.GHz D. MB ans:B 16.以下不属于供单位内部使用而要付费的IP地址有() A.10.0. 阅读全文
posted @ 2019-10-12 21:17 TIH_HIT 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 第一遍不太熟,第二遍飞快地打出来了 算是tarjan模板了吧,几天了也总算是有一点对tarjan求法过程的理解了。 if(!dfn[u])tarjan(u),low[x] = min(low[x],low[u]);//如果没有访问过u,则tarjan一下,如果u走出去搞到的low更小则用这个更新x的 阅读全文
posted @ 2019-10-10 23:45 TIH_HIT 阅读(171) 评论(1) 推荐(0) 编辑
摘要: 如题,非常巧妙的一道图论*倍增,n <= 50 所以可以用高复杂度的Floyd搞。 1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 5 using namespace std; 6 7 int ans = (1<<31)-1 阅读全文
posted @ 2019-10-10 23:18 TIH_HIT 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 根据二进制补码的性质,先使1<<31再减一即可。 阅读全文
posted @ 2019-10-10 23:04 TIH_HIT 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 如题 1 #include<iostream> 2 #include<algorithm> 3 #include<cstring> 4 #include<queue> 5 #include<vector> 6 #include<cstdio> 7 using namespace std; 8 9 c 阅读全文
posted @ 2019-10-10 20:22 TIH_HIT 阅读(85) 评论(0) 推荐(0) 编辑
摘要: 线段树可以搞,思维难度确实小一些,但是复杂度可怕 O(mnlogn) 正解:差分+二分,复杂度(nlogm)且代码短。 总之,能用差分、前缀和、二分搞得尽量不要上线段树,代码长,常数还大,迫不得已再用。 1 #include<iostream> 2 #include<cstdio> 3 #defin 阅读全文
posted @ 2019-10-09 14:26 TIH_HIT 阅读(98) 评论(0) 推荐(0) 编辑
摘要: lca的倍增策略不仅可以维护最近公共祖先,还可以维护其他具有区间可维护性的信息,例如本题中维护的最小限重。 本题调了好久,最后发现原因是数组用混了。以后一定要记准各个数组含义,千万不要混啊。。。 1 #include<iostream> 2 #include<cstdio> 3 #include<c 阅读全文
posted @ 2019-10-07 22:40 TIH_HIT 阅读(99) 评论(0) 推荐(0) 编辑
摘要: f[root][能覆盖向上几层-2] = 需要消防站数 转移过程很巧妙,38行这一句加上以后:10-〉100 for(int i = 3;i >= 0;i--)f[s][i] = min(f[s][i],f[s][i+1]); 作用:维护最优性。(i guess) 1 #include<iostre 阅读全文
posted @ 2019-10-07 10:14 TIH_HIT 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 网上的鱼龙混杂,不如自己写个。 1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include<cmath> 5 #include<cstdlib> 6 #include<algorithm> 7 using namesp 阅读全文
posted @ 2019-10-06 14:28 TIH_HIT 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 并查集模板题。对于敌对关系有两种解决方案, 一是另开一个数组存敌人,这个数组无需预处理但是处理关系时需要特判,小心与0的合并; 还有一种巧妙的办法是把fa[]数组开两倍空间,fa[i]的敌人设为fa[i+n],需要预处理然而处理关系时直接合并就行了。 code: 阅读全文
posted @ 2019-10-05 14:32 TIH_HIT 阅读(96) 评论(0) 推荐(0) 编辑
摘要: 扫描线板子题。注意两倍数组(不太清楚原理) 一位大佬的博客:https://blog.csdn.net/qq_38786088/article/details/78633478,讲的太好了。 阅读全文
posted @ 2019-10-04 20:02 TIH_HIT 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 数据好强啊,但是感觉我第二次写的应该是哪里出了问题? 27分代码(wa了好多点但是没有t): ac代码: 阅读全文
posted @ 2019-09-23 00:15 TIH_HIT 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 我代码能力可能有一定的了,要不然不能一遍写出来吧。。 要注意无解的处理! 阅读全文
posted @ 2019-09-22 23:06 TIH_HIT 阅读(208) 评论(0) 推荐(0) 编辑
摘要: 1.信息技术的英文缩写是() A.OS B.CAD C.IT D.CAI ans:C 6.现在的计算机通常是将处理程序放在连续的内存地址内。CPU 在执行这个处理程序时,是 使用一个叫()的寄存器来指示程序的执行顺序。 A.累加寄存器 B.指令寄存器 C.内存地址寄存器 D.指令地址寄存器 ans: 阅读全文
posted @ 2019-09-20 20:51 TIH_HIT 阅读(834) 评论(0) 推荐(0) 编辑
摘要: 原来其他hash与字符串hash不一样啊。。。 数组根本不用开那么大,够用就行了啊。。 实践是检验真理的唯一标准。。。 Luogu P4305不重复数字(板子) 阅读全文
posted @ 2019-09-18 23:39 TIH_HIT 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 挺好玩的。。真的。。我的生日居然可以A题 不过要注意宁可增大常数也要多几个质数提高正确性! 板子: 阅读全文
posted @ 2019-09-18 23:02 TIH_HIT 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 乍看一眼以为是高精,随便写了个usigned long long交上去拿了50分,翻了翻题解才知道用了我没用过的算法——秦九韶算法,算是道模板了吧,不过这道题中的对10^10000的数的处理值得记住,并不是告诉了模一个质数才是模质数的题,凡是位数特别多且不要求求具体答案的大概都可能用到模质数吧 代码 阅读全文
posted @ 2019-09-16 23:21 TIH_HIT 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 这道题本身真的不怎么难,但是 "路径上所有的点的出边所指向的点都直接或间接与终点连通" 这句话真的是太ex了。。 我隐隐约约记得当年做这道题时的懵逼,看来当时的代码确实是没什么问题,只是因为理解上的误差 教训:好好看题,看明白了再做,要不然一切都是白干。 题干 阅读全文
posted @ 2019-09-15 23:58 TIH_HIT 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 看着纸质题做的,感觉挺水的一道题,结果居然过不了 思路和网上的正解非常相似,但是就是不知道哪里错了 我的做法复杂度更优秀,整体思路也基本一致,为什么不对呢? 可能还是没想明白吧,等我明天再想想。 1 #include<iostream> 2 #include<cstdio> 3 #include<a 阅读全文
posted @ 2019-09-06 23:58 TIH_HIT 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 如果读入是正数,没有问题。 如果读入了负数,好像一定会错。 太坑了,考试的时候要么用读入优化,要么用cin,scanf太玄学了。。 如图: 阅读全文
posted @ 2019-08-31 16:44 TIH_HIT 阅读(1502) 评论(0) 推荐(0) 编辑
摘要: 导弹拦截调了好久啊啊啊。。。 其实并不难理解,但是大小关系实在是太容易错了。。。 那么就把每一种都分析一下吧: 最长上升子序列:if(s[tot] < x)s[++tot] = x;else 把s[]中>=x的最小元素赋为x 最长下降子序列:if(s[tot] > x)s[++tot] = x;el 阅读全文
posted @ 2019-08-29 09:25 TIH_HIT 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 即得易见平凡,仿照上例显然。 留作习题答案略,读者自证不难。 反之亦然同理,推论自然成立,略去过程QED,由上可知证毕。 (誰想出来的真的太好玩了) 阅读全文
posted @ 2019-08-29 08:40 TIH_HIT 阅读(6960) 评论(0) 推荐(0) 编辑
摘要: n! ≡ n! mod p(mod p) 所以n!的逆元≡(n! mod p)的逆元 这样就可以做这道题了。 阅读全文
posted @ 2019-08-25 22:55 TIH_HIT 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 这两道题看起来几乎一模一样,但是第一道是绿题,第二道却是橙题,做法也很不一样。 为什么第二道可以直接递推,第一道却得用单调栈呢? 其实也不难分析。两道题的区别是是否限制填充矩形的宽度。第一道没有限制,对于每个高度需要用几个矩形便是未知的, 故须找出最优方案,所以根据其最优处理的特点利用单调栈处理每个 阅读全文
posted @ 2019-08-24 23:24 TIH_HIT 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 太巧妙了,想了好久都没想出来,居然只是道黄题。。。 用s[j]储存每个数的下界,以大大减少枚举次数;从较小的数据入手,分析解题思路,优化枚举顺序从而优化复杂度。 阅读全文
posted @ 2019-08-23 23:55 TIH_HIT 阅读(110) 评论(0) 推荐(0) 编辑
摘要: ps : 我回来啦。。 马上就到noip2019了 开始用这个blog吧。。 正文: 1.复习数论 2. 阅读全文
posted @ 2019-08-22 22:44 TIH_HIT 阅读(113) 评论(0) 推荐(0) 编辑
摘要: Hello 阅读全文
posted @ 2018-07-14 18:21 TIH_HIT 阅读(75) 评论(0) 推荐(0) 编辑