刷题
sherpahu
这个作者很懒,什么都没留下…
展开
-
2021年上海交通大学计算机系考研机试题
674. 最长连续递增序列leecode原题 https://leetcode-cn.com/problems/longest-continuous-increasing-subsequence/class Solution {public: int findLengthOfLCIS(vector<int>& nums) { if(nums.size()==0)return 0; vector<int>dp(nums.s原创 2021-03-23 15:37:07 · 5241 阅读 · 1 评论 -
刷题笔记:PAT&Leetcode
https://github.com/sherpahu/AlgorithmsNotes刷题笔记:C++基础知识——STL之algorithm.md刷题笔记:C++基础知识——STL之heap.md刷题笔记:C++基础知识——STL之list.md刷题笔记:C++基础知识——STL之map.md刷题笔记:C++基础知识——STL之pair&tuple.md刷题笔记:C++基础知识——STL之queue&priority_queue.md刷题笔记:C++基础知识——STL之set.原创 2021-03-30 14:03:51 · 593 阅读 · 0 评论 -
PAT排序题
插入排序 bool isOutput=false; for(int i=1;i<n;i++) { sort(backup.begin(),backup.begin()+i+1); //左闭右开区间 if(isOutput){ bool flag=false; for(int x:backup){ if(flag)cout<<' '; el原创 2020-09-03 23:36:31 · 152 阅读 · 0 评论 -
常用重载
struct Node{ int v,c; bool operator < (const Node&a)const{ return c!=a.c?c>a.c:v<a.v; }};必须加const否则报错struct cmp{ bool operator()(const pair<int,int>&a,const pair<int,int>&b)const{ return原创 2020-08-28 09:24:17 · 142 阅读 · 0 评论 -
2020 7月最后一题
#include <bits/stdc++.h>using namespace std;const int maxn=50010;int n,m;set<int,greater>s;int que[maxn],bef=INT_MIN;unordered_map<int,bool>vis;int main(){#ifdef ONLINE_JUDGE#elsefreopen("…/1.txt",“r”,stdin);#endifcin>>n原创 2020-08-28 00:39:07 · 128 阅读 · 0 评论 -
PAT1055 The World‘s Richest 不同STL对用时的影响
这题关键在于不能在每次query时排序或建优先队列,而应该先排好,再想方法输出对应年龄段的人。此题query对时间的影响最大,着重点应该是降低query用时。之前也听闻过priority_queue的STL实现很慢,经过这题看来不应该使用priority_queue来降低用时。直接排序+string#include <bits/stdc++.h>using namespace std;const int maxn=100100;int n,m,k;struct Per{原创 2020-08-25 17:15:09 · 99 阅读 · 0 评论 -
2020年7月春季PAT题解
99分,最后一题最后一个点没过。这次实在太坑了,考到还剩50分钟时被通知第二机位的小程序挂了,是小程序直接闪退了,就只能提前交卷了。交卷后做了十几分钟把最后一题做了出来,今天看到了题目被放到了教育超市,模拟考试了一下,调了9分钟就只差最后一分了。唉,太遗憾了,我感觉应该是我的手机不行,之前模拟考可能也是小程序挂了,监考老师没有提醒我,我也就没注意到,摄像几个小时就会出现这个问题,太坑了,太坑了。换手机,9月再来。A7-1 Prime Day (20分)The above picture is原创 2020-08-25 23:02:37 · 478 阅读 · 2 评论 -
PAT 1089 Insert or Merge
7月PAT模拟考试中有这题,之前没真正做这题,考试的时候就没做出来。忽略了数组中有相等元素的情况,太坑了#include <bits/stdc++.h>using namespace std;int origin[200],s[200];int n,idx;int merge(){ int l,before=-1; for(l=1;;l*=2){ int lun=n/l; for(int i=0;i<lun;i++){原创 2020-07-22 22:19:33 · 77 阅读 · 0 评论 -
PAT 1044 Shopping in Mars 利用二分查找优化时间复杂度
1044 Shopping in Mars (25分)需要找到一段数列,其和最接近m。需要求某一段的和就使用s[]数组存储前n项和,s[j]-s[i-1]==m则表明i~j之前和为m。注意下标从1开始,较为方便。O(n^2)暴力超时做法#include<bits/stdc++.h>using namespace std;const int maxn = 100010;int n, m, tmp, s[maxn];int minn = INT_MAX;vector<pai原创 2020-07-18 11:39:53 · 77 阅读 · 0 评论 -
PAT 2019 冬季 12月 考试题解
总的而言这次考试很简单,要是今年的能跟这次一样简单就好了,可惜会加难度Good in C模拟题一个小tip,可以将最后一行非大写字符都先换成空格,再用istringsteam读入#include <bits/stdc++.h>using namespace std;vector<string>v[200];int main(){#ifdef ONLINE_JUDGE#else freopen("1.txt","r",stdin);#endif s原创 2020-07-17 12:43:45 · 103 阅读 · 0 评论 -
PAT刷题——图的最短路径(Dijstra)
PAT1003Dijstra#include <bits/stdc++.h>using namespace std;const int MAXN=510;int n,m,st,ed,G[MAXN][MAXN],weight[MAXN];int d[MAXN],w[MAXN],num[MAXN];bool vis[MAXN];const int INF=1000000000;void dijstra(int s){ fill(d,d+MAXN,INF); memset(nu原创 2020-05-09 23:11:21 · 136 阅读 · 0 评论 -
PAT刷题——map以及字符串翻转
mapmap默认使用升序排列,要降序输出可以使用反向迭代器。unordered_map不排序,在大模拟题map超时时使用。1002 应用map反向迭代https://pintia.cn/problem-sets/994805342720868352/problems/994805526272000000#include <bits/stdc++.h>using namesp...原创 2020-05-07 23:43:53 · 378 阅读 · 0 评论 -
PAT甲级1034 Head of a Gang
并查集#include <bits/stdc++.h>using namespace std;struct gang{ int head=-1; int weight=0; int num=0;}Gang[2010];int fa[2010],weight[2010];int numPerson=1,n,k,w;int find(int x){ if(x==fa[...原创 2020-05-04 22:45:28 · 83 阅读 · 0 评论 -
leetcode之滑动窗口
滑动窗口滑动窗口指一段连续的序列,一个队列,从一侧进入,从另一侧弹出.。以leetcode3为例通过起始和终止索引代表滑动窗口class Solution {public: bool alphabet[1000]; int lengthOfLongestSubstring(string s) { int i=0,j=0,ans=0; int...原创 2020-01-06 14:03:49 · 139 阅读 · 0 评论