首页 > TAG信息列表 > 20010

【LeetCode】560. 和为 K 的子数组

class Solution { public: int subarraySum(vector<int>& nums, int k) { int n=nums.size(); int presum[20010]={0}; unordered_map<int,int> mp; mp[0]=1; //前n项和0,出现次数为1次 int ans = 0; for(int

数据结构第七次上机实验解题报告

数据结构第七次上机实验解题报告 7-1 序列调度 (100 分) 有一个N个数的序列A:1,2,……,N。有一个后进先出容器D,容器的容量为C。如果给出一个由1到N组成的序列,那么可否由A使用容器D的插入和删除操作得到。 输入格式: 第1行,2个整数T和C,空格分隔,分别表示询问的组数和容器的容量,1≤T≤10

[每日一题] leetcode 740. 删除并获得点数

统计每个值所能获得的点数 dp 从终态考虑转移方程!!! dp[i][0]表示第i个数保留 dp[i][1]表示删除第i个数 dp[n][0] = dp[n - 1][1]; dp[n][1] = max(dp[n - 2][0], dp[n - 2][1]) + a[n]; class Solution { public: int dp[20010][2]; int num[20010]; int deleteAndEar

YbtOJ KMP算法课堂过关 例4 子串拆分【KMP】

思路 这道题首先可以发现要找最大字符串的子串来看是否有ABA型,然后直接超时,发现可以直接枚举左端点,大的子串可以包含小的右端点子串。于是枚举每一个左端点,然后求next,把这个子串中所有ABA找出来,然后找的过程也可以用 k

后缀数组练习1:不可重叠最长重复子串

这道题在之前,一定要先看一下我之前在后缀数组博客里面提到的最长公共前缀 1467: 后缀数组1:不可重叠最长重复子串 poj1743 时间限制: 2 Sec  内存限制: 128 MB提交: 207  解决: 81[提交] [状态] [讨论版] [命题人:admin] 题目描述 题意:有N(1 <= N <=20000)个音符的序列来表

奇偶游戏

题目链接 题意:有一个01串S,长度为n,一个人说出k个关于01串的回答,描述S[l~r] 中有奇数个1还是偶数个1。依次看,判断他到第几个问题都是可靠的回答。 思路:首先n很大要离散化,然后因为很容易想到如果S[l,r]为奇数,则S[1,r]为偶数,S[1,l-1]为奇数,或者S[1,r]为奇数,S[1,l-1]为偶数。如果S[l,

题解 CF978C 【Letters】

此题评测机出了点问题,数据全部AC,却显示UKE 下面是数据全部AC,却显示UKE的代码 思路:b[i]减去每个宿舍的房间总数,如果b[i]小于了某个宿舍的房间总数则为答案。 #include<bits/stdc++.h>using namespace std;int main(){ long long n,m,a[20010],b[20010],i,j; cin>>n>>m; for