恒__heng 2022-02-27 16:47 采纳率: 90%
浏览 76
已结题

C++在刷题的时候遇到了一个类似与排序的题,没有思路,如何解决?

题目描述:

在一件似乎很熟悉的事情中,农夫约翰正在排队ñ奶牛(1≤N≤105),方便编号1 … N, 一张照片。
最初,奶牛按顺序排列一种1,一种2, … ,一种ñ从左到右。Farmer John 的目标是按顺序排列奶牛b1, … ,bñ从左到右。为此,他可以对排序进行一系列修改。每个修改都包括选择一头奶牛并将其向左移动一些位置。

请计算农民约翰按所需顺序排列奶牛所需的最少修改次数。

输入格式(输入来自终端/标准输入):
输入的第一行包含ñ. 第二行包含一种1,一种2, … ,一种ñ. 第三行包含b1,b2, … ,bñ.
输出格式(打印输出到终端/标准输出):
打印生产 Farmer John 所需订单所需的最少修改次数。
样品输入:
5
1 2 3 4 5
1 2 3 4 5
样品输出:
0
在此示例中,奶牛已按所需顺序排列,因此无需修改。

样品输入:
5
5 1 3 2 4
4 5 2 1 3
样品输出:
2
在这个例子中,两个修改就足够了。这是 Farmer John 重新排列奶牛的一种方法:

选择奶牛4并将其向左移动四个位置。
选择奶牛2并将其向左移动两个位置。
5 1 3 2 4
-> 4 5 1 3 2
-> 4 5 2 1 3

  • 写回答

1条回答 默认 最新

  • 真相重于对错 2022-02-27 19:55
    关注

    我是这样想的
    5 1 3 2 4
    ---》
    4 5 2 1 3;
    按结果数据的位置把输入重写
    2 4 5 3 1
    因为 4排在第一个, 5排在第二个,2 排在第三个,1 排在第四个 3排在第5个
    找出从右往左找出有多少个逆序的就可以,这是是3和1 结果是2

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 3月8日
  • 已采纳回答 2月28日
  • 创建了问题 2月27日

悬赏问题

  • ¥50 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?