摘要:
今日总结: 1:数 本题目是一个用记忆化搜索来实现数位DP dp[i][j]表示在没有顶上界和前导零的情况下,当前填到了第i位,余数为j的数的个数。 在搜索过程中记一下当前数位和mod p等于多少 点击查看代码 #include<bits/stdc++.h> using namespace std; 阅读全文
摘要:
今日总结: 1:Well-defined Path Queries on a Namori 这道题是要询问(A,B)是否存在从A到B的路径,且只有一条,那么解决方法只需要用两遍dfs一个是用来查询是否有道路,第二个用来查询是否只有唯一路 点击查看代码 #include<bits/stdc++.h> 阅读全文
摘要:
今日总结: 1:订货 这道题是一道dp题,主要是用费用流 dp[i][j]表示前i个月过完仓库里还剩j个产品时所需要的最小的费用 dp[i][j]=min(dp[i][j],dp[i-1][k]+j×m+(j+u[i]-k)×d[i]); dp[i][j]=min(dp[i][j],dp[i-1][ 阅读全文
摘要:
今日总结: 1:约数个数和 这道题主要是一道数学题,主要的推到过程需要用到莫比乌斯反演,但是在求第一步用分块处理出1~n内的f(i)的值,再用线性筛求出u(i)的值和他的前缀和,我卡在了最后一步对原式进行数论分块 点击查看代码 #include<bits/stdc++.h> using namesp 阅读全文
摘要:
今日总结 1:做了一套初赛题,主要知识点如下: one:DFS中一定要用到的数据结构是栈 two:有n个叶子节点的哈夫曼树中,其节点总数为2n – 1 three:TCP拥塞控制算法包括慢启动,拥塞避免,快速重传 2:Tractor S 将此题目的数据建一个图,求出每个的连通块,然后对连通块惊醒bf 阅读全文
摘要:
今日总结 1:OIer们的东方梦 经过读题可以发现这道题目是搜索的题目主要是需要考虑每个点的状态vis表示每个点的状态开三维数组,分别表示[有剑时][有花时][都没有]每个点是否访问过 其他的就是考虑细节就可以解决,还是比较基础的bfs题目 点击查看代码 #include<bits/stdc++.h 阅读全文
摘要:
今日总结 1:楼房 这个题目主要用了离散化和线段树来解决。 首先考虑暴力的思想:首先用一个数组来存储每个点的高度,对所有的高度去一个Max 但是这么做肯定会超时。那么我们可以用一个线段树来维护每一个高度的Max使其做到查找的时间为O(1),只考虑可能存在拐点的位置,对每个拐点离散后对每个位置更新最大 阅读全文