#P1042. 2022.10.14-奖品发放

2022.10.14-奖品发放

题目内容

塔子哥是一家知名企业的HR主管,为了提高员工的工作积极性,他经常会组织各种活动来丰富员工的业余生活。最近,他举办了一场员工抽奖活动,奖品分别是儿童绘本和雨伞。在活动中,每位员工都需要填写自己喜欢的奖品,并抽取一个获奖号码。活动进行得非常成功,员工们都参与热情高涨,最终产生了一批获奖者。

现在,塔子哥需要让获奖员工领取奖品。但是,他发现每个员工都有自己喜欢的奖品,只会领取自己想要的那个奖品,因此他需要根据员工填写的喜好,分别提供儿童绘本和雨伞两种奖品,分别用数字 0011 表示,每个员工都有自己喜欢的奖品(儿童绘本或雨伞),且只会领取自己喜欢的奖品。。

塔子哥把奖品自下往上一件一件堆叠在一起,同时让员工站成一个队列,领取规则为:

  • 每轮:只能队首的员工进行领取,如果最顶上的奖品是自己喜欢的,那么会拿走它并离开队列;否则就回到队尾,等待下次机会。
  • 这个过程会一直持续到队列没有员工,或所有剩余员工都不喜欢最顶上的奖品为止。

现在给你两个长度相等的整数数组 personspersonsprizesprizes ,其中 persons[i]persons[i] 是初始队列里第 ii 名员工喜欢的奖品( i=0i=0 是队首位置), prizes[j]prizes[j] 是第 jj 个奖品的类型( 00 表示最顶上)。

请返回无法取到自己喜欢的奖品的员工数量。

输入描述

输入三行,第一行输入一个整数 nn ,代表员工数量(奖品数量)

第二行n个整数,persons[i]persons[i] 是初始队列里第 ii 名员工喜欢的奖品( i=0i=0 是队首位置)

第三行n个整数,prizes[j]prizes[j] 是第 jj 个奖品的类型( 00 表示最顶上)。

数据范围:

  • 1n1001\le n\le 100
  • persons.length==prizes.lengthpersons.length == prizes.length

输出描述

输出无法取到自己喜欢的奖品的员工数量。

样例

输入

5
0 1 1 0 1
1 0 0 1 0

输出

1

样例解释

队首的员工放弃最顶上的奖品,并回到队列的末尾,队列变为 persons=[1,1,0,1,0]persons =[1,1,0,1,0]

队首的员工拿走最顶上的奖品,并离开队列,队列变为 persons=[1,0,1,0]persons = [1,0,1,0] ,奖品为 prizes=[0,0,1,0]prizes=[0,0,1,0]

队首的员工放弃最顶上的奖品,并回到队列的末尾,队列变为 persons=[0,1,0,1]persons=[0,1,0,1]

队首的员工拿走最顶上的奖品,并离开队列,队列变为 persons=[1,0,1]persons= [1,0,1] ,奖品为 prizes=[0,1,0]prizes= [0,1,0]

队首的员工放弃最顶上的奖品,并回到队列的末尾,队列变为 persons=[0,1,1]persons = [0,1,1]

队首的员工拿走最顶上的奖品,并离开队列,队列变为 persons=[1,1]persons= [1,1] , 奖品为 prizes=[1,0]prizes=[1,0]

队首的员工拿走最顶上的奖品,并离开队列,队列变为 persons=[1]persons= [1] ,奖品为 prizes=[0]prizes=[0]

最后剩余的 11 名员工不喜欢最顶上的奖品,因此返回 11