题意
有n个橱柜,每个橱柜有左右两扇门,每打开或关闭一扇门需要1秒,问你最少经过多少秒能满足n个橱柜的左右两扇门最终分别都是关闭或者都是打开的状态。
思路
这里关闭和打开状态分别为0,1.我们只需记录其中关闭或者打开的门的个数,就能求出对应的相反状态的门的个数,左边的门达到同一状态所需最少秒是左边门中打开和关闭着的门中最小的个数,右边同理
代码
#include
#include
using namespace std;
int a,b,sum,n;
int main()
{
scanf("%d",&n);
for(int i=0;i<n;i++){
int x,y;
scanf("%d%d",&x,&y);
if(x==0)
a++;
if(y==0)
b++;
}
sum=sum+min(a,n-a)+min(b,n-b);
printf("%d\n",sum);
}