Luogu P1160 【队列安排】
详细的链表讲解
很明显的一个链表裸题
和普通的链表有一个区别就是这个题
可以O(1)插入,O(1)查询
然后我们为了方便,采用双向链表,定义s、f作为指针数组
更详细的解释见代码
#include<iostream> using namespace std; const int maxn=1e5+10; int n,m,cnt,s[maxn],f[maxn],fi; int main() {cin>>n;for(int i=2;i<=n;i++){int k,p;cin>>k>>p;if(!p) //插入到左边 {s[i]=k; //更新被影响的节点的指针f[i]=f[k];s[f[k]]=i;f[k]=i;}else //插入到右边 {f[i]=k;s[i]=s[k];f[s[k]]=i;s[k]=i;}}cin>>m;while(m--) //删除 {int x;cin>>x;if(f[x]==-1)continue;f[s[x]]=f[x];s[f[x]]=s[x];f[x]=s[x]=-1;}for(int i=1;i<=n;i++) //寻找头指针if(!f[i]){fi=i;break;}for(int i=fi;i;i=s[i]) //输出链表cout<<i<<' ';cout<<endl;return 0; }
转载于:https://www.cnblogs.com/ivanovcraft/p/9057821.html
Luogu P1160 【队列安排】相关推荐
- 洛谷P1160 队列安排 链表
洛谷P1160 队列安排 链表 1 #include <cstdio> 2 #include <cstring> 3 #include <cmath> 4 #i ...
- P1160 队列安排
队列安排 题目描述 一个学校里老师要将班上N个同学排成一列,同学被编号为1~N,他采取如下的方法: 先将111号同学安排进队列,这时队列中只有他一个人: 2−N2-N2−N号同学依次入列,编号为i的同 ...
- P1160 队列安排 洛谷
https://www.luogu.org/problem/show?pid=1160 题目描述 一个学校里老师要将班上N个同学排成一列,同学被编号为1-N,他采取如下的方法: 1.先将1号同学安排进 ...
- 洛谷-P1160 队列安排
题目 Problem Description 一个学校里老师要将班上N个同学排成一列,同学被编号为1-N,他采取如下的方法: 1.先将1号同学安排进队列,这时队列中只有他一个人: 2.2-N号同学依次 ...
- P1160 队列安排 链表
题目链接 因为有很多删除与插入的操作,所以用链表是最好的方法.一道基础的链表题,用stl自带的链表解决,第一次使用,记录迭代器下标还是第一次见到-.- #pragma comment (linker, ...
- P2837 晚餐队列安排
题目背景 Usaco Feb08 Bronze 题目描述 为了避免餐厅过分拥挤,FJ要求奶牛们分2批就餐.每天晚饭前,奶牛们都会在餐厅前排队入内,按FJ的设想,所有第2批就餐的奶牛排在队尾,队伍的前半 ...
- 晚餐队列安排‖(麻烦的聚餐)
描述 为了避免餐厅过分拥挤,FJ要求奶牛们分 33 批就餐.每天晚饭前,奶牛们都会在餐厅前排队入内,按FJ的设想,所有第 33 批就餐的奶牛排在队尾,队伍的 前端由设定为第1批就餐的奶牛占据,中间的位 ...
- luogu P2365 任务安排(FJOI2019 batch)
洛谷传送门 FJOI 日常原题 $2333$(似乎还不如 SDOI2012 任务安排 $2333$) 显然考虑 $dp$,这个是经典的把未来的代价先计算的 $dp$,然后才是斜率优化 一开始想状态时一 ...
- 【Luogu1160】队列安排(双向链表)
problem n个人排队,先将1入队 依次指定编号2~n的站在前面某人的左边或右边 从队列中去掉m个人 solution codes #include<iostream> using n ...
最新文章
- The total number of locks exceeds the lock table s
- 定制zabbix的rpm包---spec文件的书写
- cache/TLB里分别都有什么?
- sourcetree打开快捷_Sourcetree使用:拉取打开项目的步骤
- java 概率 算法_使用概率算法优化快速排序(JAVA)
- 手把手教你获取、编译和调试Flink的源代码
- python 进行后端分页详细代码
- Volley源码解析(三)
- springmvc中的session:不比对数据库自动登陆
- 编程语言中一些令人抓狂的规则
- 学python历程中
- 从头学android_activity之间的切换_姻缘测算器
- MyBatis 框架的思想及其第一次使用
- 非线性回归分析及其Matlab实现
- 深度学习辅助决策医疗器械软件审评要点及相关说明
- 快速搞懂C语言中exit(0)与exit(1)有什么区别??
- 女程序员再漂亮也是单身?解析程序员圈的奇怪现象
- 【Appium踩坑】Encountered internal error running command: Error executing adbExec.
- python爬虫百度安全验证_爬虫黑科技-绕开百度人机验证
- 刘强东当年为什么要自学编程?