题目是从牛客网的Harmon转载过来的,本人仅提供解法,如有侵权,请私信。
题目链接:https://www.nowcoder.com/discuss/405887?type=1
最小错排

//样例
//输入
3
3
1 2 3
1 2 3
4
4 3 2 1
1 1 1 1
2
1 2
10 20
//输出
7
4
30

由样例可知,这是一道规律题。
当n为偶数的时候,数列两两位置互换即可达到距离最小条件,即最小距离为权值总和。
当n为奇数时,由于要形成错排,所以多出来的元素必须要和一组有两个数组合才能形成错排,所以要将最小权*2再加上权值的总和就可以算出最小距离。
(我怕说得太绕,放一张图帮助理解)

由图可知,情况2是达不到错排效果的。
知道该规律后可以直接写代码:

 #include <bits/stdc++.h>using namespace std;int maxDataSize = 20;int maxTimes = 10;int main() {int times = 0;cin >> times;if(times<=0 || times>maxTimes)return -1;while (times--) {float res = 0, min = 201;int dSize = 0;cin >> dSize;if (dSize <= 0 || dSize>20)return -1;vector<int> v(dSize,0);vector<int> data(dSize,0);for (int i = 0; i < dSize; ++i) {cin>>data[i];}for (int i = 0; i < dSize; ++i) {cin >> v[i];res += v[i];min = (min < v[i] * data[i] ? min : v[i] * data[i]);}if (dSize % 2) {res += min;}cout<<res<<endl;}return 0;}

本文作者:"( ̄y▽, ̄)╭ "
本文链接:https://blog.csdn.net/weixin_42703404/article/details/105465902
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!

某笔试的一道简单题目相关推荐

  1. 一道简单题目的优化过程——抽签问题

    题目来源:挑战程序设计竞赛 题目描述: 给定n个数字,选择四次,可以选择已经选择过的数字,问是否可以选出和为m的四个数. 首先,最基本的做法: 枚举四层,每一层枚举出一个数,求出所有四个数字不同的排列 ...

  2. 一天一道简单题目(2)

    给出两个表示非负整数的数字链表,数字以相反的顺序存储,每个链表都存储该非负整数某一位上的数字.计算两个非负整数的和,并以链表的方式返回.简单做个比喻:342,以链表的存储形式就是,2->4-&g ...

  3. 一道简单的Fibonacci

    一道简单的Fibonacci 时间限制: 1 Sec  内存限制: 32 MB 题目描述 有如下数列:F(0) = 7, F(1) = 11, F(n) = F(n - 1) + F(n - 2)   ...

  4. 转自知乎 知乎ID@方志宏 记一道简单的Java面试题

    记一道简单的Java面试题 这可能是历史上最简单的一道Java面试题 题目很简单,完成代码,判断一个整数是否是奇数 public boolean isOdd(int i) 相信相当数量的人都在已经准备 ...

  5. 三只青蛙的故事:一道脑筋急转弯题目引发的思考

    一道脑筋急转弯题目是这样的:有三只青蛙在河中的一片叶子上顺水漂流.其中一只想跳到河里.在叶子上还剩几只青蛙? 大多数人会回答还有两只.(我刚看到此题时认为一只也没有,因为一只青蛙跳了之后剩下的两只也会 ...

  6. qduoj 一道简单的数据结构题(水题)

    题目链接:https://qduoj.com/problem/147/点击打开链接 一道简单的数据结构题 发布时间: 2017年6月3日 18:46   最后更新: 2017年6月3日 18:51   ...

  7. CSU 1785: 又一道简单题

    1785: 又一道简单题 Submit Page    Summary    Time Limit: 5 Sec     Memory Limit: 128 Mb     Submitted: 602 ...

  8. #6229. 这是一道简单的数学题(反演 + 杜教筛)

    #6229. 这是一道简单的数学题 推式子 ∑i=1n∑j=1ilcm(i,j)gcd(i,j)=(∑i=1n∑j=1nlcm(i,j)gcd(i,j)+n)∗inv2所以重点求∑i=1n∑j=1nl ...

  9. LeetCode简单题目(#263 #268 #278 #283 #290)-5道(数字、字符串)

    leetcode题库中共有350道简单题目. 本文记录已解决的题目和代码. 本文中的序号是leetcode题目中的真实序号. 文章目录 263 丑数 描述 代码 大神代码 268 缺失数字 描述 代码 ...

最新文章

  1. “神经网络”的逆袭:80年AI斗争史
  2. WPF TreeView HierarchicalDataTemplate
  3. Leaflet中使用leaflet-cion-pulse插件实现波动的图标效果
  4. Delphi下载指定网址(URL)的文件,带进度条显示
  5. python 序列化_python之序列化
  6. 阿里云联合中国信通院发布《云计算开放应用架构》标准,加速云原生应用规模化落地进程
  7. 通过Katas进行Java教程:网球比赛(轻松)
  8. OpenJudge NOI 1.9 10:找最大数序列
  9. nginx 超时时间_Linux从入门到放弃 Nginx
  10. c/c++:STL之Binary search
  11. [TWLFramework] Singleton
  12. 【IOS-COCOS2D游戏开发之十九】游戏数据存储的四种常用方式NSKEYEDARCHIVER/NSUSERDEFAULTS/WRITE写入/SQLITE3...
  13. 深入理解ButterKnife源码并掌握原理(一)
  14. php实现单,双向链表,环形链表解决约瑟夫问题
  15. OpenCV读取网络摄像头视频并保存到本地
  16. 关于flutter出现Because flutter_app depends on flutter_screenutil >=3.0.0-beta.1 which requires Flutter S
  17. Codeforces Global Round 16 2021.9.13
  18. web端的兼容性测试
  19. adb安装apk失败解决办法
  20. 公共信息模型(CIM)

热门文章

  1. 值得关注的5款“企业级低代码开发平台”推荐
  2. 炸!微信Windows版可以刷朋友圈了
  3. 结合 服务器+后端+前端,完成 vue项目 后台管理系统
  4. 搬运--domoticz的 MQTT API接口 函数英文
  5. python之父:一个合格的python程序员,应该从这三本书入手!
  6. HTTP基础知识(仅介绍涉及R语言爬虫部分)
  7. php调用nexmo发送短信,使用Nexmo或Twilio仅使用电话号码进行登录和验证
  8. wp兼容了android应用程序,WP比安卓流畅 但为什么就不好用呢?
  9. [Mysql] ROUND函数
  10. 易语言编写倒计时小程序