Tích mảng trừ chính nó
Bài học 2 trên 3 trong khóa học Thử thách lập trình phỏng vấn, gói IX của Coddy.
Thử thách
Trung bìnhViết một hàm (function) có tên productExceptSelf, nhận vào mảng nums gồm n số nguyên, trong đó n > 1, rồi trả về một mảng output sao cho output[i] bằng tích của tất cả phần tử trong nums, ngoại trừ nums[i].
Ví dụ:
Đầu vào: [1,2,3,4]
Đầu ra: [24,12,8,6]
Ràng buộc:
- Đảm bảo tích các phần tử của bất kỳ tiền tố hoặc hậu tố nào của mảng, bao gồm cả toàn bộ mảng, đều nằm trong phạm vi số nguyên 32 bit.
- Giải bài toán mà không dùng phép chia và với độ phức tạp O(n).
Tự làm thử
int* productExceptSelf(int* nums, int numsSize, int* returnSize) {
// Viết code ở đây
}Tất cả bài học trong Thử thách lập trình phỏng vấn, gói IX
Tự luyện tập: Trình biên dịch C online