笔试面试 某公司员工信息数据及员工薪资信息数据如下: 员工信息表staff_tb(staff_id-员工id,staff_name-员工姓名,staff_gender-员工性别,post-员工岗位类别,department-员工所在部门 ),如下所示: 员工薪资信息表salary_tb(salary _id-薪资信息id,staff_id-员工id,normal_salary-标准薪资,dock_salary-扣除薪资 ),如下所示: 问题:请统计各个部门平均实发薪资和各部门男、女员工平均实发薪资各是多少? 注:实发薪资=标准薪资-扣除薪资 要求输出:部门,平均实发薪资(保留2位小数)按照部门平均薪资降序排列(当出现不存在某类型员工,平均薪资用0.00表示) department : 部门名称。 average_actual_salary : 每个部门员工的实际平均薪资,保留了两位小数。 average_actual_salary_male : 每个部门男员工的实际平均薪资,保留了两位小数。 average_actual_salary_female : 每个部门女员工的实际平均薪资,保留了两位小数。 示例数据结果如下: 解释:部门dep2有3个员工: 实发薪资和性别分别为:3号female员工11000-2200=8800、5号male员工16000-2500=13500、7号female员工60000-6000=54000 故结果为dep2部门平均薪资是(8800+13500+54000)/ 3=25433.33 、average_actual_salary_male是13500/1=13500.00、average_actual_salary_female是(8800+54000)/2=31400.00 其他结果同理。
笔试面试 现有一张用户信息表user_info,结构和数据示例如下: 一张试卷作答记录表exam_record,结构和数据示例如下: 现在想统计"算法"职业方向的人平均得分是多少,以下哪个选项不能完成统计?
笔试面试 已知 MapReduce 程序代码块为: public static class UserMapper extends Mapper<LongWritable, Text, Text, Text> { public void map(LongWritable key, Text value, Context context) { try { String line = value.toString(); String[] words = line.split(“,”); String userName = words[0]; String friendName = words[1]; context.write(new Text(userName), new Text(friendName)); context.write(new Text(friendName), new Text(userName)); } catch (Exception e) { e.printStackTrace(); } } } public static class UserReducer extends Reducer<Text, Text, Text, Text> { List<String> userList = new LinkedList<String>(); Map<String, Integer> userFriends = new HashMap<String, Integer>(); public void reduce(Text key, Iterable<Text> values, Context context) { try { String userName = key.toString(); if(!userList.contains(userName)){ userList.add(userName); } List<String> friendsList = new ArrayList<String>(); for (Text value : values) { String friendName=value.toString(); if(!friendsList.contains(friendName)){ friendsList.add(friendName); } } userFriends.put(userName,friendsList.size()); } catch (Exception e) { e.printStackTrace(); } } protected void cleanup(Context context) { try { int userCout = userList.size(); Iterator<Map.Entry<String, Integer>> itr=userFriends.entrySet().iterator(); while (itr.hasNext()){ Map.Entry<String, Integer> word=itr.next(); String key=word.getKey(); int value=word.getValue(); DecimalFormat df=new DecimalFormat(“0.00”); context.write(new Text(key), new Text(df.format((float)value/userCout))); } } catch (Exception e) { e.printStackTrace(); } } } 内容如下的文件经过该程序处理后的输出结果为() 张三,赵八 李四,陈七 王五,陈七 钱六,张三 陈七,钱六 赵八,李四
笔试面试 甲、乙、丙、丁4位同学参加学校运动会。已知他们4人每人都至少获得1个奖项,4人获奖总数为10。关于具体获奖情况,4人还有如下说法:甲:乙和丙获奖总数为5;乙:丙和丁获奖总数为5;丙:丁和甲获奖总数为5;丁:甲和乙获奖总数为4。后来得知,获得2个奖项的人说了假话,而其他人均说了真话。根据以上信息,甲、乙、丙、丁4人具体的获奖数分别应是: