LeetCode1652. 拆炸弹
题目描述看的不是很清楚,直接看用例。这道题是简单题,取模,防止数组访问越界。
C语言代码如下:
int* decrypt(int* code, int codeSize, int k, int* returnSize)
{
*returnSize = codeSize;
int * ans = (int *)calloc(codeSize, sizeof(int));
if (k == 0) {
return ans;
} else if (k < 0) {
for (int i = 0; i < codeSize; i++) {
for (int j = 1; j <= -k; j++) {
ans[i] += code[(i - j + codeSize) % codeSize];
}
}
} else {
for (int i = 0; i < codeSize; i++) {
for (int j = 1; j <= k; j++) {
ans[i] += code[(i + j) % codeSize];
}
}
}
return ans;
}