码迷,mamicode.com
首页 > 其他好文 > 详细

765. 情侣牵手

时间:2020-02-10 09:53:51      阅读:58      评论:0      收藏:0      [点我收藏+]

标签:bsp   image   应该   src   div   com   贪心   http   else   

技术图片

 

 贪心算法(应该算吧),每次至少复合一对情侣

 1 class Solution {
 2 public:
 3     int minSwapsCouples(vector<int>& row) {
 4         if(row.empty()){return 0;}
 5         int n=row.size();
 6         vector<int> d(n,0);//d[i]表示i旁边坐的谁
 7         for(int i=0;i<n;++i){
 8             if(i&1){//座位奇数,(i-1,i)一个座
 9                 d[row[i]]=row[i-1];//i旁边的人是i-1
10                 d[row[i-1]]=row[i];//i-1旁边的人是i
11             }
12         }
13         int cnt=0;
14         for(int i=0;i+1<n;i+=2){
15             if(d[i]==i+1){
16                 //i号人的旁边正好是i+1,即是一对情侣
17                 continue;
18             }
19             else{
20                 int x=d[i];
21                 int y=d[i+1];
22                 d[i]=i+1,d[x]=y,d[i+1]=i,d[y]=x;
23                 ++cnt;
24             }
25         }
26         return cnt;
27     }
28 };

 

765. 情侣牵手

标签:bsp   image   应该   src   div   com   贪心   http   else   

原文地址:https://www.cnblogs.com/FdWzy/p/12289631.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!