A#串弹珠 题目描述 现在有N颗弹珠,第i弹珠的颜色编号为ai。此时依次按照从第1颗到第N颗弹珠的顺序开始串弹珠串,且如果弹珠串不为空,那新串上的弹珠则会串到上一颗弹珠的后面。在我们依次串弹珠的过程中,如果当前的弹珠串包含的弹珠数量大于1且当前弹珠串两端的弹珠颜色变化相同的时候,我们就将这一个整个弹珠串从中拿出(拿出之后弹珠串为空),然后继续之前的顺序串弹珠。请问通过完以上串弹珠的所有过程,我们会拿出多少个弹珠串呢?
输入格式 输入以以下格式从标准输入给出:
N
a1 a2 ... an
输出格式
输出拿出的弹珠串的数量。
样例
输入数据 1
5
1 2 1 2 2
输出数据 1
2
输入数据 2
5
1 2 2 3 3
输出数据 2
0
提示
数据范围
1≤n≤100000 1≤a i≤100
B#小小"栈"
题目描述
扑克牌中的大王利用 S表示,小王利用 s 表示。
给你一副只有大小王的扑克牌,现在已知:
当两张大王相邻时,他们会打起来,导致两张大王全部消失。
当两张小王相邻时,他们会联合起来,两张小王会合并成为一张大王。
大小王相邻时什么都不会发生。o( ̄┰ ̄*)ゞ
自左向右进行判断,请输出最终的扑克牌形态。
输入格式
输入一行只包含字符 s和 S字符串,该字符串的长度len 满足 1≤len≤10 .
输出格式 这里是输出格式
样例 输入数据 1
ssSSsssS
输出数据 1
sS
数据范围 见题干。
C#我想吃零食 题目描述 到吃零食的环节啦!某校提供的零食里面只有果冻和糖果两类,分别用数字 0 和 1 表示。零食(果冻和糖果的总和)的数量与小朋友的数量相同。
所有小朋友站成一个队列,每个小朋友喜欢的要么是果冻,要么是糖果。 所有零食都放在一个 栈 中,每一次:
如果队列最前面的小朋友 喜欢 栈顶的零食,那么会 拿走它 并 离开队列。 否则,这位小朋友会 放弃这个零食 并回到队列的尾部。 这个过程会一直持续到队列里所有小朋友都不喜欢栈顶的零食为止。 请问最后无法吃到自己喜欢的零食的小朋友数量是多少?
输入格式 第一行一个整数 n ,表示小朋友以及零食的数量。
第二行给定一个长度为 n 的整数数组 childrens, childrens[i] 是初始队列里第 i 位小朋友对零食的喜好(i = 0 是队列最开始的位置)。
第三行给定一个长度为 n 的整数数组 snacks , snacks[j] 是栈里第 j 个零食的类型(j = 0 是栈的顶部)。
输出格式 请你输出无法吃到自己喜欢的零食的小朋友数量。
样例 输入数据 1 4 1 1 0 1 0 1 0 1 输出数据 1 2 输入数据 2 6 1 1 1 0 0 1 1 0 1 0 1 0 输出数据 2 1 数据范围 占比 数据范围
100%
0<=n<=300