摘要: 题意:对于一个01串,每次选择一对相邻的数字进行同或操作,如果最后剩余数字只有一个1,则这是一个好的串,求出一个01串所有子串是好的串的数量。 由于每次操作0的个数的奇偶性不会改变,所以能够化为1的串的零的个数必定为偶数,因为最终结果的零的个数是偶数。充分性可通过数学归纳法证明。 使用前缀和可以在O 阅读全文
posted @ 2025-08-11 20:01 love-mitsuha 阅读(9) 评论(0) 推荐(0)
摘要: 题意为在一个无向无权图中找到以x为起点,y为终点的路径,且这条路径所有顶点所构成的序列是所有可达路径序列中字典序最小的,每个顶点只走一次。 起点已经确定了,所以剩下只要考虑怎么走,其实换句话说,要求中间路过的序列符合递增排序且数字越多越好,因为样例中3,1,2,5字典序使小于3,1,5的。 但递增排 阅读全文
posted @ 2025-08-04 20:48 love-mitsuha 阅读(29) 评论(0) 推荐(0)
摘要: 图的关节点,也被成为割点,含义是若去掉这个点使连通图数量加一,则为关节点。 tarjan算法首先使用dfs生成搜索树,并且为每个节点标记访问时间,这里使用order保存,同时维护low数组,含义是不通过搜索树的父结点可以追溯到的最早祖先节点的时刻。 # prev父结点 current当前结点 # o 阅读全文
posted @ 2025-07-03 23:57 love-mitsuha 阅读(62) 评论(0) 推荐(0)
摘要: 以矩阵链乘法这一经典动态规划问题作为展开。 这是dp解法: int n; cin >> n; Matrix* matrix = new Matrix[n + 1]; for (size_t i = 1; i <= n; i++) cin >> matrix[i].row >> matrix[i].c 阅读全文
posted @ 2025-04-02 16:41 love-mitsuha 阅读(34) 评论(0) 推荐(0)
摘要: long long check(int weight[], int p) { long long count = 0; for (size_t i = 0; i < k; i++) { size_t sum = 0; while (sum + weight[count] <= p) { sum += 阅读全文
posted @ 2025-03-22 14:16 love-mitsuha 阅读(19) 评论(0) 推荐(0)
摘要: #include <iostream> #include <stack> #include <string> #include <deque> using namespace std; int main() { int res = 0; stack<int> slope;//'\'的序号栈 dequ 阅读全文
posted @ 2025-03-21 16:28 love-mitsuha 阅读(20) 评论(0) 推荐(0)
摘要: int main() { long long n; cin >> n; for (long long i = 1; i * i * i < n; i++) { if (n % i != 0) continue; long long a = i, b = n / i; if (b > a * a && 阅读全文
posted @ 2025-03-17 09:35 love-mitsuha 阅读(34) 评论(0) 推荐(0)
摘要: int maxSubArray(vector<int>& nums) { int len = nums.size(); int max=INT_MIN; int sum=0; for(int i=0;i<len;i++) { sum+=nums[i]; if(max<sum) max=sum; if 阅读全文
posted @ 2025-03-15 17:11 love-mitsuha 阅读(15) 评论(0) 推荐(0)
摘要: int wiggleMaxLength(vector<int>& nums) { int len=nums.size(); if(len==1) return 1; vector<int> res; res.push_back(nums[0]); int idx,flag; for(idx=1;id 阅读全文
posted @ 2025-03-14 17:24 love-mitsuha 阅读(72) 评论(0) 推荐(0)
摘要: 跟着代码随想录把力扣的回溯法题目基本写完了,最大的感悟是:一定要把生成树给画对,哪些地方应该剪枝,哪些地方比较特殊需要保留。 由于回溯法一般涉及到对于所有结果的输出,例如求出所有的子串、子数组,且回溯法的模板比较单一,所以在画树的时候需要着重理清题目想要考察的重点,也就是本题的变化之处,其实无非就是 阅读全文
posted @ 2025-03-13 21:55 love-mitsuha 阅读(36) 评论(0) 推荐(0)