网站备案资料下载网站开发与维护是做什么工作

张小明 2026/1/10 18:53:23
网站备案资料下载,网站开发与维护是做什么工作,一套vi设计大概多少钱,自己在线制作logo免费 生成器题目 公司某部门软件教导团正在组织新员工每日打卡学习活动#xff0c;他们开展这项学习活动已经一个月了#xff0c;所以想统计下这个月优秀的打卡员工。每个员工会对应一个id#xff0c;每天的打卡记录记录当天打卡员工的id集合#xff0c;一共30天。请你实现代码帮助统计…题目公司某部门软件教导团正在组织新员工每日打卡学习活动他们开展这项学习活动已经一个月了所以想统计下这个月优秀的打卡员工。每个员工会对应一个id每天的打卡记录记录当天打卡员工的id集合一共30天。请你实现代码帮助统计出打卡次数top5的员工。加入打卡次数相同将较早参与打卡的员工排在前面如果开始参与打卡的时间还是一样将id较小的员工排在前面。注不考虑并列的情况按规则返回前5名员工的id即可如果当月打卡的员工少于5个按规则排序返回所有有打卡记录的员工id输入描述第一行输入为新员工数量N表示新员工编号id为0到N-1N的范围为[1,100]第二行输入为30个整数表示每天打卡的员工数量每天至少有1名员工打卡。之后30行为每天打卡的员工id集合id不会重复。输出描述按顺序输出打卡top5员工的id用空格隔开用例用例一输入 11 4 4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 0 1 7 10 0 1 6 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 6 10 7 10 输出 10 0 1 7 6用例二输入 7 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 输出 0 1 2 3 4用例三输入 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 输出 1 0python解法解题思路输入数据第一个输入是员工的总人数 n。第二个输入是员工的出勤情况每个员工有一个唯一的 ID。接下来输入 30 天的员工登录数据每一天登录的员工 ID 被记录在一个列表中。统计每个员工的出勤天数对于每一天的登录记录遍历每个登录的员工 ID统计他们的出勤天数。如果员工 ID 是第一次出现则记录下这个员工的出勤天数为 1同时记录下第一次出勤的天数。排序根据出勤天数排序首先按照出勤天数从多到少排序若出勤天数相同则按照第一次出勤的天数排序从早到晚如果还相同则按照员工 ID 排序从小到大。输出前 5 名员工的 ID最后返回排名前 5 的员工 ID按要求输出。# 输入员工人数 n int(input()) # 输入员工的出勤情况员工 ID 列表 attendance list(map(int, input().split())) # 输入每天的登录员工记录30天的登录数据 logins [] for _ in range(30): logins.append(list(map(int, input().split()))) # 定义一个函数来找出出勤最多的前五名员工 def find_top(logins): # 存储每个员工的出勤信息 workers_data {} # 遍历每一天的登录记录 for day_idx in range(len(logins)): daily_ids logins[day_idx] for emp_id in daily_ids: # 如果员工已经存在于字典中更新出勤天数 if emp_id in workers_data: workers_data[emp_id][attended_days] 1 # 如果员工是第一次出现初始化出勤天数并记录第一次出勤的天数 else: workers_data[emp_id] { attended_days: 1, first_day: day_idx } # 将员工的出勤数据转化为元组列表格式为 (员工ID, 出勤天数, 第一次出勤的天数) rankings [] for emp_id, data in workers_data.items(): rankings.append((emp_id, data[attended_days], data[first_day])) # 按照出勤天数从多到少、第一次出勤天数从早到晚、员工ID从小到大排序 rankings.sort(keylambda x: (-x[1], x[2], x[0])) # 返回前5名员工的ID并将结果拼接为一个字符串输出 return .join([str(x[0]) for x in rankings[:5]]) # 调用函数并打印结果 print(find_top(logins))java解法解题思路输入数据第一个输入是员工的总人数 n虽然在代码中没有直接用到。第二个输入是一个包含 30 天数据的数组表示每一天登录的员工人数。接下来输入每天的员工 ID用来记录当天哪些员工登录了。数据结构使用一个 TreeMapInteger, Integer[] 来存储每个员工的登录数据Integer 为员工的 ID。Integer[] 数组包含两个元素[0] 表示员工的出勤天数[1] 表示员工第一次出勤的天数即对应的天数索引。数据处理对于每一天的登录记录遍历员工 ID更新该员工的出勤天数。如果是第一次登录记录第一次出勤的天数。排序根据出勤天数降序进行排序若出勤天数相同则按照第一次出勤天数升序排序若两者还相同则按照员工 ID升序排序。输出前 5 名排序完成后返回排名前 5 的员工 ID输出结果import java.util.*; public class Main { public static void main(String[] args) { // 创建Scanner对象读取输入 Scanner sc new Scanner(System.in); // 输入员工总数 n在这题中其实没有用到 int n sc.nextInt(); // 输入每一天登录的员工数量 int[] days new int[30]; for (int i 0; i 30; i) { days[i] sc.nextInt(); } // 创建一个TreeMap存储每个员工的出勤情况 // Key: 员工 ID, Value: [出勤天数, 第一次出勤的天数索引] MapInteger, Integer[] records new TreeMap(); for (int i 0; i 30; i) { // 对每一天的登录记录进行遍历 for (int j 0; j days[i]; j) { // 输入当天登录的员工ID int id sc.nextInt(); // 如果该员工的记录不存在初始化该员工的出勤天数为0第一次出勤的天数为当前天数 if (!records.containsKey(id)) { records.put(id, new Integer[] {0, i}); } // 更新员工的出勤天数 records.get(id)[0]; } } // 获取出勤最多的前五名员工并输出 ListInteger top5 getTop5(records); for (int i 0; i top5.size(); i) { if (i 0) System.out.print( ); System.out.print(top5.get(i)); } } // 根据出勤情况获取前5名员工 public static ListInteger getTop5(MapInteger, Integer[] records) { // 将Map转换为List便于排序 ListMap.EntryInteger, Integer[] list new ArrayList(records.entrySet()); // 对List进行排序 // 1. 按照出勤天数降序排序 // 2. 如果出勤天数相同则按照第一次出勤的天数升序排序 // 3. 如果出勤天数和第一次出勤天数都相同则按员工ID升序排序 list.sort((a, b) - { if (b.getValue()[0].equals(a.getValue()[0])) { return a.getValue()[1].equals(b.getValue()[1]) ? a.getKey() - b.getKey() : a.getValue()[1] - b.getValue()[1]; } return b.getValue()[0] - a.getValue()[0]; }); // 提取前五名员工的ID返回一个列表 ListInteger result new ArrayList(); for (int i 0; i Math.min(5, list.size()); i) { result.add(list.get(i).getKey()); } return result; } }C解法解题思路输入数据第一个输入是员工总数 n但在此题中并未直接使用。第二个输入是一个包含 30 天数据的数组 dailyCounts表示每天登录的员工人数。接下来是 30 天的具体员工登录记录每天的登录员工 ID 存储在二维数组 dailyIds 中。记录员工出勤情况使用 unordered_mapint, pairint, int recordMap 来存储每个员工的出勤信息。int 是员工的 ID。pairint, int 中first 是该员工的出勤天数second 是员工第一次出勤的天数索引。更新出勤记录遍历每一天的登录记录更新每个员工的出勤天数。如果是该员工第一次出勤则记录其第一次出勤的天数。排序将员工的出勤数据从 unordered_map 转换为 vectortupleint, int, int每个元素是一个包含员工 ID、出勤天数和第一次出勤天数的元组。按照以下优先顺序排序出勤天数降序。如果出勤天数相同则按照第一次出勤天数升序。如果两者都相同则按照员工 ID升序。输出前 5 名排序后输出排名前 5 的员工 ID按要求输出。#include iostream #include vector #include unordered_map #include algorithm #include string using namespace std; // 计算前5名的函数输入参数为一个二维数组 dailyIds表示每天的登录员工ID列表 string calculateTop5(const vectorvectorint dailyIds) { // 使用unordered_map存储员工的出勤情况 // key: 员工IDvalue: pair(first: 出勤天数, second: 第一次出勤的天数索引) unordered_mapint, pairint, int recordMap; // 遍历每天的员工登录情况 for (int i 0; i dailyIds.size(); i) { // 遍历每天的员工ID for (int id : dailyIds[i]) { // 如果员工第一次出现初始化出勤天数为1并记录第一次出勤的天数 if (recordMap.find(id) recordMap.end()) { recordMap[id] { 1, i }; } // 如果员工已经出现更新该员工的出勤天数 else { recordMap[id].first; } } } // 将unordered_map转化为vector方便排序 vectortupleint, int, int resultList; for (const auto entry : recordMap) { int id entry.first; int count entry.second.first; int day entry.second.second; resultList.push_back(make_tuple(id, count, day)); } // 对结果进行排序 // 1. 根据出勤天数降序排序 // 2. 如果出勤天数相同按第一次出勤的天数升序排序 // 3. 如果两者都相同按员工ID升序排序 sort(resultList.begin(), resultList.end(), [](const tupleint, int, int a, const tupleint, int, int b) { if (get1(a) ! get1(b)) { return get1(a) get1(b); // 出勤天数多的排前面 } else if (get2(a) ! get2(b)) { return get2(a) get2(b); // 第一次出勤早的排前面 } else { return get0(a) get0(b); // 出勤天数和第一次出勤天数相同按ID排序 } }); // 将前5名员工的ID拼接成结果字符串 string result; for (int i 0; i min(5, (int)resultList.size()); i) { result to_string(get0(resultList[i])) ; } // 移除末尾的多余空格 if (!result.empty() result.back() ) { result.pop_back(); } return result; } int main() { int n; cin n; // 读取员工总数n虽然在代码中未使用该值 // 读取30天内每一天的员工登录数量 vectorint dailyCounts(30); for (int i 0; i 30; i) { cin dailyCounts[i]; } // 读取每一天的员工登录ID vectorvectorint dailyIds(30); for (int i 0; i 30; i) { dailyIds[i].resize(dailyCounts[i]); for (int j 0; j dailyCounts[i]; j) { cin dailyIds[i][j]; } } // 计算并输出前5名员工ID cout calculateTop5(dailyIds) endl; return 0; }
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

网站原型设计工具网络推广团队分工

tochd是一款专为游戏爱好者设计的开源工具,能够智能地将游戏ISO、CUEBIN和GDI文件转换为CHD格式,为模拟器使用带来极大便利。这款基于Python的脚本作为7z和chdman的前端,不仅实现了高效的文件压缩,还大大简化了游戏文件管理流程。…

张小明 2025/12/24 20:50:54 网站建设

重庆市住房和城乡建设网站论坛交流平台有哪些

还在为Edge-TTS连接超时问题抓狂吗?🤯 每次运行到一半就卡住,看着进度条一动不动,那种感觉真是让人崩溃!别担心,今天我就带你从根源到实战,彻底解决这个烦人的问题。Edge-TTS连接超时其实并不可…

张小明 2026/1/5 20:39:08 网站建设

做培训的网站上海市企业网站建设

文章目录一、核心架构差异引发的存储模式变革1.1 Vue2的Options API与状态管理困境1.2 Vue3的Composition API与逻辑复用革命二、存储介质选择的工程化考量2.1 存储介质特性对比2.2 典型场景解决方案场景1:SPA应用长期认证场景2:敏感信息短期存储场景3&a…

张小明 2025/12/24 22:42:00 网站建设

网站导航如何优化红河州seo怎么做整站排名

神经网络模型基础:原理、实践与代码实现 1. 网络任务与性能函数 在某些任务中,比如“到达目标物体”,需要确定更有可能达成该目标的网络动作,并将其传授给网络。此时,定义一个高层次的性能函数往往是最实用的方法,例如一个随着手臂接近目标物体而增大的函数。 2. 无特…

张小明 2025/12/24 22:41:58 网站建设

扬州学做网站培训多少钱公众号 一键导入wordpress

本系统(程序源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容一、选题背景 关于高校教学管理信息化的研究,现有研究主要以宏观层面的智慧校园、教务系统整体架构为主,专门针对“…

张小明 2026/1/10 6:18:29 网站建设

个人网站审批360做网站荆州

你是否曾为重复性的网页操作感到疲惫?每天花数小时在不同网站间切换、点击、填写表单,却发现自己真正有价值的思考时间被严重挤压?在数字化信息爆炸的今天,传统浏览器操作模式已经成为制约工作效率的关键瓶颈。而WebRL-Llama-3.1-…

张小明 2026/1/7 3:52:54 网站建设