欢迎来到起遇信息学
起遇信息学正处于上线筹建阶段,以下功能已全部开放免费体验: ✅ 完整题库浏览与代码提交评测(C / C++ / Python / Java 等) ✅ 入门到进阶的系列课程试读、作业与考试 ✅ AI 提示、AI 作业分析等智能助教功能 ✅ 赛事模拟与个人能力报告 ✅ 邮箱注册开放 ⏳ 付费课程订阅与微信/支付宝支付通道 ⏳ 手机号登录,微信扫码登录、微信公众号绑定 使用中如遇任何问题,欢迎通过页面底部 **"联系我们"** 与我们沟通。
CF1092B.Teams Forming
Teams Forming
There are students in a university. The number of students is even. The -th student has programming skill equal to .
The coach wants to form teams. Each team should consist of exactly two students, and each student should belong to exactly one team. Two students can form a team only if their skills are equal (otherwise they cannot understand each other and cannot form a team).
Students can solve problems to increase their skill. One solved problem increases the skill by one.
The coach wants to know the minimum total number of problems students should solve to form exactly teams (i.e. each pair of students should form a team). Your task is to find this number.
Input
The first line of the input contains one integer () — the number of students. It is guaranteed that is even.
The second line of the input contains integers (), where is the skill of the -th student.
Output
Print one number — the minimum total number of problems students should solve to form exactly teams.
Note
In the first example the optimal teams will be: , and , where numbers in brackets are indices of students. Then, to form the first team the third student should solve problem, to form the second team nobody needs to solve problems and to form the third team the second student should solve problems so the answer is .
In the second example the first student should solve problems to form a team with the second one.
Samples
6
5 10 2 3 14 5
5
2
1 100
99
在线编程 IDE
建议全屏模式获得最佳体验
| 进入全屏编程 | Alt+E |
| 递交评测 | Ctrl+Enter |
| 注释/取消注释 | Ctrl+/ |
| 缩放字体 | Ctrl+滚轮 |