#CCBCHBA0000040. Thay đổi dấu trong dãy (Adjacent Sign Changes)
Thay đổi dấu trong dãy (Adjacent Sign Changes)
Thay đổi dấu trong dãy (Adjacent Sign Changes)
Nguồn: Phước Hưng OJ
Phiên bản: Phước Hưng OJ Extended
Đề bài
Đếm cặp hai phần tử liên tiếp trái dấu (một âm, một dương); số 0 không thuộc dấu nào và cắt mạch. Tuyệt đối không nhân hai số 32 bit để kiểm tích âm.
Input
n trong [0,100000], n giá trị thuộc int 32 bit [-2147483648,2147483647].
Output
Số cặp kề nhau trái dấu.
Subtask
- Subtask 1 (20%): n<=6, |ai|<=10.
- Subtask 2 (30%): n<=100, |ai|<=10000.
- Subtask 3 (50%): n<=100000, ai thuộc int 32 bit.
Ví dụ
Ví dụ 1
Input
5
-2 3 0 -1 4
Output
2
Giải thích
Cặp (-2,3) và (-1,4); hai cặp chạm số 0 không tính.
Ví dụ 2
Input
2
-2147483648 2147483647
Output
1
Giải thích
So sánh dấu trực tiếp, không tính tích có nguy cơ tràn.