随笔分类 -  校内测试

摘要:为什么每次想的最久的题得的分数最低!!!qwqwq 再也不在noip上尝试A*叻!! 模拟题,先把能消的消掉,双指针从两端向中间扫描,如果头尾合并可以消,就把它消掉,最后判断一下。因为消完过后num保留的是中间的个数,要把两端加上(实际就是一个循环节的长度 #include<iostream> #i 阅读全文
posted @ 2018-08-17 17:05 Wans_ovo 阅读(222) 评论(2) 推荐(2)
摘要:在一个队列中一次加入每一个字符,每次更新当前队列中的状态,当满足存在26个不同字符时,更新答案,删除队首。 一开始想的分解质因数,再通过每个质因子的个数来判断是否成立,可是一开始就错了...以为1e9开方是1e3... 方法是先将x和y乘起来,因为题目有一个性质,他们的乘积一定是一个数的3次方,设这 阅读全文
posted @ 2018-08-16 14:29 Wans_ovo 阅读(206) 评论(0) 推荐(2)
摘要:dp??不能确定转移状态。考虑用优先队列储存最优决策点,可是发现当前选择最优不能保证最后最优,在后面可以将之前用过的替换过来。 比如数据: 3 5 4 6 只储存a[i]来决策不能延展到后面的状态,因此每次选择过后把b[i]加入队列,下次选择最优时如果选择到了b[i],则表示用之前选择过的来替换到当 阅读全文
posted @ 2018-08-15 21:11 Wans_ovo 阅读(180) 评论(0) 推荐(2)
摘要:nlogn做法,dp[i]表示当前长度为i的最长上升子序列末尾元素的值。 不会写lower_bound(qwq,贴一个以前的好看点的代码 法一:用度数计算,可以证明最后答案等于选出的k个点的总度数-2*(k-2)-2,表示选择的一条链上去掉两头每个点少减两个度数,两头少减一个度数,就算有分叉也不影响 阅读全文
posted @ 2018-08-14 16:43 Wans_ovo 阅读(160) 评论(0) 推荐(1)
摘要:感觉今天状态不太好啊一大早就很困,t1卡得有点久,以为三道题都是这个难度,结果难度完全是倒着排的啊!!在dp和数学上还得多练题!! 很像背包的一道DP??先不考虑树的结构,给每个点都先分配一个度数,剩下n-2个度数DP分配,dp[i]表示分配i个点出去可以获得的最大价值,由dp[1]~dp[i-1] 阅读全文
posted @ 2018-08-13 20:33 Wans_ovo 阅读(185) 评论(0) 推荐(1)