洛谷P2776 [SDOI2007]小组队列 链表 + 模拟
有些细节需要注意:
1.编号和元素种类都从0开始标号。
2.需要特判一下队列被弹空的情况。
Code:
#include<cstdio>
#include<cstring>
using namespace std;
const int maxn = 1000000 + 4;
int typ[maxn], tail[maxn];
int head[maxn], nex[maxn], cur[maxn], cnt, back;
int main()
{
// freopen("in.txt","r",stdin);
int n,m, ops, pre = 1;
scanf("%d%d",&n,&m);
for(int i = 1;i <= n; ++i)
{
scanf("%d",&typ[i]);
typ[i] += 1;
}
scanf("%d",&ops);
while(ops--)
{
char A[10];
scanf("%s",A);
if(A[1] == 'u')
{
int u,k;
scanf("%d",&k);
k += 1;
u = typ[k];
if(!tail[u] || tail[u] == back)
{
nex[back] = ++ cnt;
cur[cnt] = k;
tail[u] = back = cnt;
}
else
{
nex[++cnt] = nex[tail[u]], cur[cnt] = k;
nex[tail[u]] = cnt, tail[u] = cnt;
}
}
else
{
printf("%d\n",cur[pre] - 1);
if(typ[cur[nex[pre]]] != typ[cur[pre]] ) tail[typ[cur[pre]]] = 0;
pre = nex[pre] ? nex[pre] : cnt + 1;
}
}
return 0;
}
洛谷P2776 [SDOI2007]小组队列 链表 + 模拟的更多相关文章
- P2776 [SDOI2007]小组队列
P2776 [SDOI2007]小组队列 题目背景 嘛,这道非常简单的给大家提供信心的省选题洛谷居然没有! 这么简单的题怎么可以没有! 给大家提升士气是义不容辞的责任! 所以我就来补一下啦.. 值得一 ...
- luogu P2776 [SDOI2007]小组队列
题目背景 嘛,这道非常简单的给大家提供信心的省选题洛谷居然没有! 这么简单的题怎么可以没有! 给大家提升士气是义不容辞的责任! 所以我就来补一下啦.. 值得一提的是,标程是我自己做的.. 很渣,因为数 ...
- 洛谷 P3695 CYaRon!语 题解 【模拟】【字符串】
大模拟好啊! 万一远古计算机让我写个解释器还真是得爆零了呢. 题目背景 「千歌です」(我是千歌).「曜です」(我是曜).「ルビィです」(我是露比).「3人合わせて.We are CYaRon! よろし ...
- 洛谷P2460 [SDOI2007]科比的比赛(题解)(贪心+搜索)
科比的比赛(题解)(贪心+搜索) 标签:算法--贪心 阅读体验:https://zybuluo.com/Junlier/note/1301158 贪心+搜索 洛谷题目:P2460 [SDOI2007] ...
- 【题解】洛谷P1065 [NOIP2006TG] 作业调度方案(模拟+阅读理解)
次元传送门:洛谷P1065 思路 简单讲一下用到的数组含义 work 第i个工件已经做了几道工序 num 第i个工序的安排顺序 finnish 第i个工件每道工序的结束时间 need 第i个工件第j道 ...
- 洛谷[Luogu] 普及村-简单的模拟总结
题目列表 注明:Level值代表在本难度下的排行.(纯粹本蒟蒻主观评判)注明:Level值代表在本难度下的排行.(纯粹本蒟蒻主观评判)注明:Level值代表在本难度下的排行.(纯粹本蒟蒻主观评判) P ...
- 洛谷P1038 神经网络(bfs,模拟,拓扑)
题目背景 人工神经网络(Artificial Neural NetworkArtificialNeuralNetwork)是一种新兴的具有自我学习能力的计算系统,在模式识别.函数逼近及贷款风险评估等诸 ...
- hdu 6375 度度熊学队列 (链表模拟)
度度熊正在学习双端队列,他对其翻转和合并产生了很大的兴趣. 初始时有 N 个空的双端队列(编号为 1 到 N ),你要支持度度熊的 Q 次操作. ①1 u w val 在编号为 u 的队列里加入一个 ...
- 洛谷 U4792 Acheing 单调队列
U4792 Acheing 5通过 43提交 题目提供者Acheing 标签 难度尚无评定 提交 最新讨论 暂时没有讨论 题目背景 题目并没有什么含义,只是想宣传一下自己的博客,Acheing.com ...
随机推荐
- 1.git的安装和配置
从git官网下一个git安装包. 点击git.exe安装程序,点击[next] 点击[next] 根据自己的需要可以把需要安装软件全选上,点击[next] 由于这是个人使用所以选择第二 ...
- 【[Offer收割]编程练习赛10 B】出勤记录II
[题目链接]:http://hihocoder.com/problemset/problem/1482 [题意] [题解] 递推题. 每次增加3个字符中的一个;然后根据下面这个数组递推; 递推方式看程 ...
- MySQL 索引分析
MySQL复合唯一索引分析 关于复合唯一索引(unique key 或 unique index),网上搜索不少人说:"这种索引起到的关键作用是约束,查询时性能上没有得到提高或者查询时根本没 ...
- jQuery Mobile中$.mobile.buttonMarkup方法使用具体解释
近期在群里遇到多数网友提到$.mobile.buttonMarkup()方法的使用. 我这里就列了一下api的使用说明,以后大家看博客就能解决这个问题.如有不对的地方,请留言指出! jQuery Mo ...
- [Javascript Crocks] Apply a function in a Maybe context to Maybe inputs (curry & ap & liftA2)
Functions are first class in JavaScript. This means we can treat a function like any other data. Thi ...
- ios设计一部WindowsPhone手机
ios设计一部WindowsPhone手机 main.m #import <Foundation/Foundation.h> #import "WindowsPhone.h&qu ...
- hdu 1698 Just a Hook 基本线段树
使用线段树更新每段区间的奖(1,2,3),最后在统计整段区间的数和,基本线段树,果断1A啊 #include<iostream> #include<stdio.h> using ...
- Python去除多余空格
今天做爬虫时.发现结果中好多多余的空格.然后有强迫症的我当然不会放过 " xyz ".strip() # returns "xyz" " xyz &q ...
- CentOS6.8 安装 mysql 5.6
安装前的准备: 1.确认是否安装过mysql: yum list installed | grep mysql 2.删除系统自带的mysql及其依赖命令: yum -y remove mysql-li ...
- Swift_ios_二进制,十进制,十六进制之间的转换
这里所说的转换,并不是Swift中字面量之间的转换.如果是字面量之间的转换,ios系统中已经自动帮我们转换了. 例如let number1:Int = 8let number2:Int = 0b100 ...