算法思路借鉴于官方题解,添加了详细注释用于理解,刷题打卡
感觉这题也就是个easy难度,没什么特殊的地方
class Solution
{
public:
int chalkReplacer(vector<int> &chalk, int k)
{
int sum = 0, res, i; //如果把sum定义为longlong那就不用考虑溢出了
for (i = 0; i < chalk.size(); i++)
{
//if(chalk[i]>k) break;//防止溢出
sum += chalk[i];
//if(sum>k) break;//防止溢出
}
if (sum == 0)
return 0;
k = k % sum;
i = 0;
while (k >= chalk[i])
{
k -= chalk[i];
i++;
}
return i;
}
};