随笔分类 - 贪心
摘要:题目 最长有效括号 方法一:dp int longestValidParentheses(string s) { int ans = 0; stack<int> sta; sta.push(-1); for(int i = 0;i < s.size();i ++) { if(s[i] == '(')
阅读全文
摘要:题目 https://codeforces.com/contest/1788/problem/E 题意 给一个长度为n的数组a 定义一个子段为[x,y],价值是长度(y - x + 1) 要选择一个子段,必须 问所有不相交子段的最大价值和是多少
阅读全文
摘要:题目 https://codeforces.com/contest/1788/problem/D 题意 给一个长度为n的x数组,代表n个点的坐标 每个点会向离他最近的点移动,当有点相遇时,停止 问任意子序列(点数量大于等于2),有多少个终点 思路 从题目给的“2”这个信息入手,从贡献这个方面来考虑
阅读全文
摘要:题目 https://codeforces.com/problemset/problem/1361/B 题意 输入 t(≤1e5) 表示 t 组数据,每组数据输入 n(≤1e6) p(1≤p≤1e6) 和长为 n 的数组 k(0≤k[i]≤1e6)。所有数据的 n 之和不超过 1e6。 从这 n 个
阅读全文
摘要:题目 https://codeforces.com/problemset/problem/1141/F2 题意 忽略; 给出一个数组,求和相等的,不重叠子串的最大数量,并输出 (题目有点绕) 思路 先求出数组前缀和,然后找出所有数字和的区间数组 对不同的和进行贪心操作————找最多不重叠区间数量 一
阅读全文
摘要:题目 https://codeforces.com/problemset/problem/1661/D 题意 给一个长度为 n 的数组 a,和一个正数k,每次在数组 a 中选取连续的k个元素 每个元素减去1,2,3……k 问至少要多少次操作,才能呢使数组 a 中所有数字小于 0 思路 从后往前贪心,
阅读全文
摘要:题目 https://codeforces.com/contest/1661/problem/C 代码 #include<bits/stdc++.h> #define debug1(a) cout<<#a<<'='<< a << endl; #define debug2(a,b) cout<<#a<
阅读全文