HM161 编号是否在册

HM161 编号是否在册

HM161 编号是否在册

来源: 第 161 集 职工管理系统-删除职工-判断职工是否存在

难度: 入门

时间限制: 1s

空间限制: 64MB

题目描述

删除职工之前,必须先确认这个编号在不在花名册里。册上只有 \(1\sim 4\) 号,却要查 \(5\) 号或 \(1000\) 号时,无法删除。

请先声明删除接口,但本题只实现判断函数 int isExist(int id)

  1. 先准备位置变量 index,一开始就认定该编号不存在,赋值为 \(-1\)。
  2. 从下标 \(0\) 起顺序扫描内存数组。若第 \(i\) 名职工的编号等于传入的 \(id\),把 index 改成 \(i\),并立刻 break,只认第一次出现的位置。
  3. 无论有没有找到,最后都返回 index:找到则返回数组下标,找不到则仍是 \(-1\)。

对每次查询:若返回值不等于 \(-1\),输出 职工存在;否则输出 职工不存在。下一题才会真正按这个下标去做删除。

输入格式

第一行两个整数 \(n\) 和 \(q\)(\(1 \le n \le 1000\),\(1 \le q \le 1000\)),表示职工人数和查询次数。

接下来 \(n\) 行,第 \(i\) 行(\(i\) 从 \(0\) 计)一个整数编号 \(id_i\) 和一个不含空白的姓名 \(s_i\)(\(1 \le id_i \le 10^9\),\(1 \le |s_i| \le 20\))。

接下来 \(q\) 行,每行一个待查编号 \(x\)(\(1 \le x \le 10^9\))。

输出格式

共 \(q\) 行。每行一种结果:职工存在职工不存在,行末换行。

样例

输入 #1

4 3
1 张三
2 李四
3 王五
4 赵六
1
5
4

输出 #1

职工存在
职工不存在
职工存在

输入 #2

3 2
10 安娜
20 鲍勃
10 卡拉
10
1000

输出 #2

职工存在
职工不存在

说明

  • 返回值是数组下标而不是职工编号;本题输出只根据「是不是 \(-1\)」判断存在。
  • 样例 2 中编号 \(10\) 出现两次,扫描到下标 \(0\) 就停止。
  • 真正的删除职工下一题再做,本题不要改数组。

信息

ID
1160
难度
(无)
分类
(无)
标签
(无)
递交数
0
已通过
0
通过率
?
上传者