卫大师数据结构
搬运实验作业,水水文章。
哈希表扁豆
此人不懒,但什么都没写
展开
-
7-1 一元多项式求导
#include<iostream>#include<cstdio>using namespace std;int m,n;int main(){ bool op=0; while(cin>>m>>n) { m=m*n; n--; if(n==-1) continue; if(op) cout<<' '; cout<<m<<' '<<n; op=1;原创 2022-01-06 20:36:40 · 371 阅读 · 0 评论 -
7-2 银行业务队列简单模拟
#include<iostream>#include<cstdio>using namespace std;int quea[1005],queb[1006],taila,tailb,heada,headb,n;int main(){ cin>>n; for(int i=1,num;i<=n;i++) { cin>>num; if(num%2) quea[++taila]=num; else queb[++tailb]原创 2022-01-06 20:36:09 · 818 阅读 · 0 评论 -
7-3 银行排队问题之单窗口“夹塞”版
#include<iostream>#include<cstdio>#include<algorithm>#include<map>#include<vector>#include<cstring>using namespace std;int n,m,l[105],cir[105][105],cnt;int ans,cost[10005],pos[10005];struct Person{ int num,t,p;原创 2022-01-06 20:35:41 · 425 阅读 · 0 评论 -
7-4 银行排队问题之单队列多窗口服务
#include<iostream>#include<cstdio>using namespace std;int n,t[1005],p[1005],cost[1005],k,ans0,ans[1005],mx1,mx2;struct Windows{ int num,ed;}w[1005];int main(){ cin>>n; for(int i=1;i<=n;i++) { cin>>t[i]>>p[i];原创 2022-01-06 20:35:07 · 525 阅读 · 0 评论 -
7-5 银行排队问题之单队列多窗口加VIP服务
#include<iostream>#include<cstdio>using namespace std;int n,t[1005],p[1005],cost[1005],k,ans0,ans[1005],mx1,mx2,vip,next1[1005],nw,w[1005];bool isvip[1005],solve[1005];int main(){ cin>>n; for(int i=1;i<=n;i++) { cin>>t原创 2022-01-06 20:34:30 · 662 阅读 · 0 评论 -
7-6 修理牧场
#include<iostream>#include<cstdio>#include<algorithm>using namespace std;long long n,que[10005],fr=-1,la,ans,tong[1005];int wd[10005];void read(int &x){ int f=1;x=0;char s=getchar(); while(s<'0'||s>'9'){if(s=='-')f=-1;s原创 2022-01-06 20:34:00 · 143 阅读 · 0 评论 -
7-7 目录树
#include<iostream>#include<cstdio>#include<cstring>#include<vector>#include<map>#include<algorithm>using namespace std;int cnt,N;struct Node{ int num; string s; vector<int>m; vector<int>n; map<原创 2022-01-06 20:33:31 · 245 阅读 · 0 评论 -
7-8 旅游规划
#include<iostream>#include<queue>using namespace std;int s,t,n,m,last[505],d[505],cnt,d1[505];struct edge{ int v,w,c,next;}e[250005];void add(int u,int v,int w,int c){ e[++cnt].v=v; e[cnt].w=w; e[cnt].c=c; e[cnt].next=last[u]; last原创 2022-01-06 20:32:58 · 279 阅读 · 0 评论 -
7-9 公路村村通
#include<iostream>#include<queue>#include<cstring>#include<algorithm>using namespace std;int cnt,last[1005];int a[1005],k,ans,n,m;struct edge{ int u,v,w; }e[100005];void add(int u,int v,int w){ e[++cnt].v=v; e[cnt].u=u;原创 2022-01-06 20:31:34 · 74 阅读 · 0 评论 -
7-10 社交网络图中结点的“重要性”计算
#include<iostream>#include<queue>#include<cstdio>using namespace std;int s,t,n,m,last[10005],d[10005],k,cnt;struct edge{ int v,w,next;}e[200005];void add(int u,int v){ e[++cnt].v=v; e[cnt].w=1; e[cnt].next=last[u]; last[u]=cnt原创 2022-01-06 20:30:15 · 517 阅读 · 0 评论 -
7-11 畅通工程之局部最小花费问题
#include<iostream>#include<queue>#include<cstring>#include<algorithm>using namespace std;int cnt,last[1005];int a[1005],k,ans,n,m;struct edge{ int u,v,w; }e[100005];void add(int u,int v,int w){ e[++cnt].v=v; e[cnt].u=u;原创 2022-01-02 18:02:47 · 116 阅读 · 0 评论 -
7-12 航空公司VIP客户查询
#include<iostream>#include<cstdio>#include<unordered_map>#include<algorithm>using namespace std;int main(){ unordered_map<string,int>ac; string s; int n,k,m; cin>>n>>k; for(int i=1,d;i<=n;i++) { ci原创 2022-01-02 18:02:16 · 239 阅读 · 0 评论 -
7-13 字符串关键字的散列映射
#include<iostream>#include<cstdio>#include<algorithm>#include<cstring>using namespace std;bool us[10005];string s[505];int ac[505];int re(int x){ for(int i=1;i<x;i++) if(s[i]==s[x]) return i; return 0;}int main(){原创 2022-01-02 18:01:42 · 358 阅读 · 0 评论 -
7-14 新浪微博热门话题
#include<iostream>#include<cstdio>#include<algorithm>#include<cstring>#include<map>using namespace std;int n,ac,mx;string s1;bool isnum(char c){ if(c>='0'&&c<='9') return 1; return 0;}bool isaph(cha原创 2022-01-02 18:01:10 · 77 阅读 · 0 评论 -
7-15 寻找大富翁
#include<iostream>#include<cstdio>#include<algorithm>using namespace std;long long n,m,a,b[15];int main(){ cin>>n>>m; for(int i=1;i<=n;i++) { scanf("%lld",&a); if(a>b[1]) { b[1]=a; sort(b+1,b+1+m原创 2022-01-02 18:00:39 · 70 阅读 · 0 评论 -
7-16 奥运排行榜
#include<iostream>#include<cstdio>#include<algorithm>using namespace std;const double eps=1e-6;struct counts{ int a,b,num; double c,d;}a[250];int n,r1[250],r2[250],r3[250],r4[250],m;bool cmp1(const counts &x,const counts &am原创 2022-01-02 18:00:08 · 222 阅读 · 0 评论 -
7-17 PAT排名汇总
#include<iostream>#include<cstdio>#include<algorithm>using namespace std;int t,n,cnt;struct students{ long long p,rk1,rk2,sc; string num;}s[40005];bool cmp1(const students &a,const students &b){ if(a.p==b.p) return a.s原创 2022-01-02 17:59:38 · 229 阅读 · 0 评论 -
7-18 模拟EXCEL排序
#include<iostream>#include<cstdio>#include<algorithm>using namespace std;struct students{ long long sc; string num,name;}s[100005];bool cmp1(const students &a,const students &b){ return a.num<b.num;}bool cmp2(const原创 2022-01-02 17:59:07 · 236 阅读 · 0 评论 -
7-19 Windows消息队列
#include<iostream>#include<cstdio>#include<queue>using namespace std;int n,y;struct ele{ string s; int x; bool operator<(const ele &a)const{ return x>a.x; }};int main(){ cin>>n; string s1,s2; priority_queu原创 2022-01-02 17:58:32 · 221 阅读 · 0 评论 -
7-20 六度空间
#include<iostream>#include<queue>using namespace std;int s,t,n,m,last[5005],d[5005],cnt;struct edge{ int v,w,next;}e[80005];void add(int u,int v){ e[++cnt].v=v; e[cnt].next=last[u]; e[cnt].w=1; last[u]=cnt;}struct heapnode{ int u原创 2022-01-02 17:58:04 · 211 阅读 · 0 评论 -
7-21 那就别担心了
#include<iostream>#include<queue>using namespace std;int s,t,n,m,last[505],d[505],cnt,in[505],tp[505],ot[505];struct edge{ int v,next;}e[1000005];void add(int u,int v){ e[++cnt].v=v; e[cnt].next=last[u]; in[v]++; ot[u]++; last[u]=c原创 2022-01-02 17:57:27 · 97 阅读 · 0 评论 -
7-22 过年了,回家吧
#include<iostream>#include<queue>#include<map>using namespace std;int s0,t,n,m,last[505],d[505],cnt,d0[505],p[505],pre[505];struct edge{ int v,w,next;}e[80005];void add(int u,int v,int w){ e[++cnt].v=v; e[cnt].next=last[u]; e[原创 2022-01-02 17:56:52 · 310 阅读 · 0 评论 -
7-23 扫码抗疫情
#include<iostream>#include<algorithm>#include<queue>#include<cstdio>#include<map>using namespace std;struct students{ string s,ss; int h,m,sec,t;}a[10005];int n,k,ans,cnt;bool cmp(const students &x,const student原创 2022-01-02 17:56:02 · 204 阅读 · 0 评论 -
7-24 热点新闻
#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<map>#include<queue>using namespace std;struct news{ string tp,tim,s[55]; int cnt;}a[10005];struct ac{ string s; int sum;}原创 2022-01-02 17:55:14 · 81 阅读 · 0 评论 -
7-25 统计工龄
#include<iostream>#include<cstdio>using namespace std;int n,t[55],a;int main(){ cin>>n; for(int i=1;i<=n;i++) { cin>>a; t[a]++; } for(int i=0;i<=50;i++) if(t[i]) cout<<i<<':'<<t[i]<<endl原创 2022-01-02 17:54:27 · 251 阅读 · 0 评论 -
7-26 抢红包
#include<iostream>#include<cstdio>#include<algorithm>using namespace std;int n,k,p,x;struct person{ int num,ans,ot,ac,cnt;}a[10005];bool cmp(const person &e,const person &r){ if(e.ac==r.ac) { if(e.cnt==r.cnt) return原创 2022-01-02 17:53:49 · 94 阅读 · 0 评论 -
7-27 人以群分
#include<iostream>#include<cstdio>#include<algorithm>using namespace std;long long n,a[100005],x,y,b[100005],dif;int main(){ cin>>n; for(int i=1;i<=n;i++) scanf("%lld",&a[i]); sort(a+1,a+1+n); for(int i=1;i<=n;原创 2022-01-02 17:53:15 · 77 阅读 · 0 评论 -
7-28 悄悄关注
#include<iostream>#include<cstdio>#include<algorithm>#include<map>using namespace std;int n,k,cnt;double sum;map<string,bool>care;map<string,double>ans;string ss[10005];int main(){ cin>>n; string s; f原创 2022-01-02 17:52:34 · 80 阅读 · 0 评论 -
7-29 点赞狂魔
#include<iostream>#include<cstdio>#include<algorithm>#include<map>using namespace std;int n,k,cnt;struct person{ string name; int ans; double ave;}p[105];bool cmp(const person &e,const person &r){ if(e.ans==r.an原创 2022-01-02 17:51:52 · 74 阅读 · 0 评论 -
7-30 链式基数排序
#include<iostream>#include<vector>using namespace std;int n,a[1005],pw=1,b[1005];vector<int>v[10][15];void print(int x){ int cnt=0; for(int i=0;i<=9;i++) { for(int j=0;j<v[x][i].size();j++) { cout<<v[x][i][j]&l原创 2022-01-02 17:51:00 · 276 阅读 · 0 评论 -
快速排序模板
每选定一个基数,在选定区间内将小于等于基数的放左边,大于等于基数的放右边,此操作相当于将基数放到了其在排好序后对应的位置。每一上述操作后将当前序列划分为左右两个序列,对左右两个序列继续进行上述操作。时间复杂度:最好nlogn,最坏n2,平均nlogn,不稳定。空间复杂度logn。int pt(int l,int r){ int mid = a[l]; while(l<r) { while(l<r&&a[r]>=mid) r--;//右边第一个不合法.原创 2021-12-18 09:20:19 · 80 阅读 · 0 评论 -
6-5 基数排序
#include <iostream>#define MAXNUM_KEY 8 //关键字项数的最大值 #define RADIX 10 //关键字基数,此时是十进制整数的基数 #define MAX_SPACE 10000 using namespace std;typedef struct{ char keys[MAXNUM_KEY]; //关键字 int next; }SLCell; //静态链表的结点类型 typed原创 2021-11-30 00:28:34 · 672 阅读 · 0 评论 -
6-4 归并排序
#include<stdio.h>#include<stdlib.h>typedef int KeyType;typedef struct { KeyType *elem; /*elem[0]一般作哨兵或缓冲区*/ int Length; }SqList;void CreatSqList(SqList *L);/*待排序列建立,由裁判实现,细节不表*/ vo原创 2021-11-30 00:27:21 · 127 阅读 · 0 评论 -
6-2 快速排序
#include<stdio.h>#include<stdlib.h>typedef int KeyType;typedef struct { KeyType *elem; /*elem[0]一般作哨兵或缓冲区*/ int Length; }SqList;void CreatSqList(SqList *L);/*待排序列建立,由裁判实现,细节不表*/ in原创 2021-11-30 00:25:20 · 931 阅读 · 0 评论 -
6-1 希尔排序的实现
#include<stdio.h>#include<stdlib.h>typedef int KeyType;typedef struct { KeyType *elem; /*elem[0]一般作哨兵或缓冲区*/ int Length; }SqList;void CreatSqList(SqList *L);/*待排序列建立,由裁判实现,细节不表*/ vo原创 2021-11-30 00:11:11 · 1243 阅读 · 0 评论