leetcode 135.分发糖果
int max(int a,int b)
{
return a>b?a:b;
}
int candy(int* ratings, int ratingsSize) {
int *left=calloc(ratingsSize,sizeof(int));
int *right=calloc(ratingsSize,sizeof(int));
int ans=0;
for(int i=1;i<ratingsSize;i++)
{
if(ratings[i]>ratings[i-1])
{
left[i]=left[i-1]+1;
}
}
for(int i=ratingsSize-2;i>=0;i--)
{
if(ratings[i]>ratings[i+1])
{
right[i]=right[i+1]+1;
}
}
for(int i=0;i<ratingsSize;i++)
{
ans+=(max(left[i],right[i])+1);
}
return ans;
}