欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 高考 > 上海市计算机学会竞赛平台2024年11月月赛丙组考勤系统

上海市计算机学会竞赛平台2024年11月月赛丙组考勤系统

2025/5/1 17:54:02 来源:https://blog.csdn.net/a121677_/article/details/143883588  浏览:    关键词:上海市计算机学会竞赛平台2024年11月月赛丙组考勤系统
题目描述

在 Carol 的办公楼的入口处有一套刷卡系统,每个员工都有一张唯一的身份卡,他们每次进出大楼都要刷卡,而系统会依次记录每次刷卡的员工编号,员工和他的编号一一对应,且在一天内一共有 nn 次刷卡记录。

一个员工第一次刷卡记为进入,第二次刷卡记为离开,第三次记为进入,以此类推。Carol 想要根据刷卡记录计算同时最多有多少员工在办公楼中,请你帮他完成任务。

在第一次刷卡记录前办公楼里没有人。

输入格式

第一行一个整数 nn。

第二行 nn 个整数 a1,⋯ ,ana1​,⋯,an​ 依次表示刷卡的员工编号。

输出格式

一行一个整数表示答案。

数据范围

对于 30%30% 的数据,n≤10n≤10。

对于 60%60% 的数据,n≤1000n≤1000。

对于 100%100% 的数据,1≤n≤2×1051≤n≤2×105,1≤ai≤n1≤ai​≤n。

样例数据

输入:

5
1 2 1 5 4

输出:

3

说明:

在第 5 个时刻后,员工 2,4,5 在办公楼中,此时达到 3人。

输入:

4
1 1 1 2

输出:

2

详见代码:

#include <bits/stdc++.h>
using namespace std;
int n;
bool b[200005];
int ans = 0;
int cnt = 0;
int main() 
{cin >> n;for(int i = 1; i <= n; i++) {int a;cin >> a;if (b[a] == 0) {cnt++;}else { cnt--;}b[a] = !b[a];ans = max(ans, cnt); }cout << ans;return 0;
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词