题意:
给出n个兔子的坐标,处于最左边和最右边的兔子只能隔着一只兔子跳到这只兔子另一则的任意空位,问最多能跳多少次
思路:
模拟一下就可以知道,中间的空位一定是可以跳到的,最左和最右两个空的段只能跳满其中一个,所以选择一个多的跳
代码是加和所有的空格,减去左右两侧较小的空格
#include <bits/stdc++.h>
using namespace std;
int n;
int num[600];
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
scanf("%d",&num[i]);
}
int sum=0;
for(int i=2;i<=n;i++)
{
sum+=num[i]-num[i-1]-1;
}
sum-=min(num[2]-num[1]-1,num[n]-num[n-1]-1);
if(sum<0)
sum=0;
printf("%d\n",sum);
}
}