一、问题描述

一个房间里有 n 个座位和 n 名学生,房间用一个数轴表示。给你一个长度为 n 的数组 seats ,其中 seats[i] 是第 i 个座位的位置。同时给你一个长度为 n 的数组 students ,其中 students[j] 是第 j 位学生的位置。

你可以执行以下操作任意次:

增加或者减少第 i 位学生的位置,每次变化量为 1 (也就是将第 i 位学生从位置 x 移动到 x + 1 或者 x - 1)
请你返回使所有学生都有座位坐的 最少移动次数 ,并确保没有两位学生的座位相同。

请注意,初始时有可能有多个座位或者多位学生在 同一 位置。

二、C语言代码

int minMovesToSeat(int* seats, int seatsSize, int* students, int studentsSize){// 将座位和学生数组进行排序for(int i = 0; i < seatsSize - 1; i++){int flag = i;for(int j = i + 1; j < seatsSize; j++){if(seats[j] < seats[flag]){flag = j;}}if(flag > i){int temp = seats[i];seats[i] = seats[flag];seats[flag] = temp;}}for(int i = 0; i < studentsSize - 1; i++){int flag = i;for(int j = i + 1; j < studentsSize; j++){if(students[j] < students[flag]){flag = j;}}if(flag > i){int temp = students[i];students[i] = students[flag];students[flag] = temp;}}// 移动int count = 0;for(int i = 0; i < seatsSize; i++){count += abs(students[i] - seats[i]);}return count;}

排序——使每位学生都有座位的最少移动次数相关推荐

  1. 5885. 使每位学生都有座位的最少移动次数

    5885. 使每位学生都有座位的最少移动次数 一个房间里有 n 个座位和 n 名学生,房间用一个数轴表示.给你一个长度为 n 的数组 seats ,其中 seats[i] 是第 i 个座位的位置.同时 ...

  2. LeetCode简单题之使每位学生都有座位的最少移动次数

    题目 一个房间里有 n 个座位和 n 名学生,房间用一个数轴表示.给你一个长度为 n 的数组 seats ,其中 seats[i] 是第 i 个座位的位置.同时给你一个长度为 n 的数组 studen ...

  3. LeetCode 2037. 使每位学生都有座位的最少移动次数

    文章目录 1. 题目 2. 解题 1. 题目 一个房间里有 n 个座位和 n 名学生,房间用一个数轴表示. 给你一个长度为 n 的数组 seats ,其中 seats[i] 是第 i 个座位的位置. ...

  4. 2037. 使每位学生都有座位的最少移动次数

    一个房间里有 n 个座位和 n 名学生,房间用一个数轴表示.给你一个长度为 n 的数组 seats ,其中 seats[i] 是第 i 个座位的位置.同时给你一个长度为 n 的数组 students ...

  5. 练习:每位学生(姓名,年龄)都有自己的家庭住址。那么,既然有对应关系,则将学生对象和家庭住址存储到map集合中。学生作为键, 家庭住址作为值。

    /* 练习:每位学生(姓名,年龄)都有自己的家庭住址.那么,既然有对应关系, 则将学生对象和家庭住址存储到map集合中.学生作为键, 家庭住址作为值.> 注意,学生姓名相同并且年龄相同视为同一名 ...

  6. c语言5个人3课成绩,一道c语言排序题【问题描述】某小学最近得到了一笔赞助,打算拿出其中一部分为学习成绩优秀的前5名学生发奖学金。期末,每个学生都有3门课的成绩:语文、数学、英语。先按总分从高...

    一道c语言排序题 [问题描述] 某小学最近得到了一笔赞助,打算拿出其中一部分为学习成绩优秀的前5名学生发奖学金.期末,每个学生都有3门课的成绩:语文.数学.英语.先按总分从高到低排序,如果两个同学总分 ...

  7. LeetCode MySQL 1112. 每位学生的最高成绩

    文章目录 1. 题目 2. 解题 1. 题目 表:Enrollments +---------------+---------+ | Column Name | Type | +----------- ...

  8. 不在上学了能不能考计算机二级,好多学生都问到底要不要参加计算机二级考试?...

    好多学生都问到底要不要参加计算机二级考试? 时间:2015-08-31 来源:科泰教育 曾经有人这么形容我们的学历,证书与文凭,说上学的时候好比就是做火车,而文凭,证书就是在这个火车上的车票.不同的毕 ...

  9. 衡水中学计算机老师,衡水中学资深老师:电脑阅卷本就是一种淘汰机制,学生都不以为然...

    原标题:衡水中学资深老师:电脑阅卷本就是一种淘汰机制,学生都不以为然 衡水中学老师:电脑阅卷也是一种淘汰机制 放眼国内的教育,可以说绝大部分的学生都逃不过两次重要的考试--中考和高考!而这两场考试都是 ...

最新文章

  1. C# 如何在PDF文档中创建表格
  2. Jenkins X:基于Kubernetes的CI/CD平台
  3. python爬斗鱼直播_Python爬取2000万直播数据——看20万游戏主播能否月入100万
  4. ie打开完成,网页显示空白
  5. centos7下python3与python2共存并且开启py3虚拟环境
  6. 需求条目化:一个让用户故事有效落地的套路
  7. mysql三表联合更新_mysql三表连接update
  8. python建立一个字符串_python字符串基本方法
  9. 连接mysql_spring boot连接mysql提示The server time zone value xxx错误
  10. java生成uuid主键_java生成UUID
  11. tomcat:学习:一:(第1次操作:成功)手机下载 tomcat 服务器里面的文件+tomcat 安装配置使用
  12. 使用html语言替换字符串中的特殊标点符号
  13. 联想微型计算机不支持xp,联想台式机不能装xp怎么办
  14. cs_Censorship_CreateUpdateDelete///cs_Censorships_Get
  15. docker-compose 部署shipyard
  16. cad2020卸载工具_2020年您应该拥有的12个自由职业者设计工具
  17. 给陌生的你听-G.G张思源
  18. C语言【数据结构】栈和队列【OJ题(C++)、选择题】
  19. 编程马拉松(英语:hackathon,又译为黑客松)
  20. linux编译环境下,华为LiteOS初体验(STM32F407)

热门文章

  1. 信通院 移动安全蓝皮书 数据安全管理案例 学习笔记
  2. 初学jQuery Easy UI的总结
  3. easy-mock使用
  4. git笔记之README.md格式
  5. 安徽大学计算机科学与技术学院张磊,吕钊(安徽大学计算机科学与技术学院副教授)_百度百科...
  6. WPF实现棋盘式图片切换效果
  7. 130 余个相见恨晚的超实用网站
  8. 【电商】电商后台---商品管理系统
  9. ArcGIS:如何进行栅格数据的拼接和裁剪、坡度坡向的提取、地形透视图的建立、等高线的提取、剖面图的创建?
  10. 从此告别PPT制作的烦恼:ChatGPT和MindShow帮你快速完成