2022年10月30日 星期日

[724] Find Pivot Index

ㄟ~感覺應該有更簡單的解法?!
速度每次submit 都差蠻多的@—@
還有如果不能printf 我應該無法寫對吧哈哈哈 XD
這個try & error 的習慣要怎麼改.......Orz
最後, return 前應該要free吧.以上兒....
int pivotIndex(int* nums, int numsSize){
    int i;
    int sum=0;
    int *left = malloc (sizeof(int)*numsSize);
    int *right = malloc (sizeof(int)*numsSize);

    for (i=0;i<numsSize;i++)
    {
        sum+=nums[i];
        left[i] = sum - nums[i];
    }
    for(i=0;i<numsSize;i++)
    {
        right[i]=sum-left[i]-nums[i];
        if(left[i]==right[i])
            return i;
    }
    return -1;
        
}

少掉一個rigth 的話...(因為right 彷彿不需要存起來啊!)
int pivotIndex(int* nums, int numsSize){
    int i,check=0;
    int sum=0;
    int *left = malloc (sizeof(int)*numsSize);

    for (i=0;i<numsSize;i++)
    {
        sum+=nums[i];
        left[i] = sum - nums[i];
    }
    for(i=0;i<numsSize;i++)
    {
        check=sum-left[i]-nums[i];
        if(left[i]==check)
            return i;
    }
    return -1;        
}

沒有留言:

張貼留言