| # | Bài tập | Điểm | Thời gian: | Giới hạn bộ nhớ |
|---|---|---|---|---|
| 1 | sumarr | 100 (p) | 1.0s | 1023M |
| 2 | arr01 | 100 (p) | 1.0s | 1023M |
| 3 | arr02 | 100 (p) | 1.0s | 1023M |
| 4 | Nhỏ nhất | 100 (p) | 1.0s | 1023M |
| 5 | Đếm số | 100 (p) | 1.0s | 256M |
| 6 | Tìm số trong mảng | 100 (p) | 1.0s | 1023M |
| 7 | maxle | 100 (p) | 1.0s | 1023M |
| 8 | minge | 100 (p) | 1.0s | 1023M |
| 9 | Vị trí số âm | 100 (p) | 1.0s | 1G |
| 10 | Sắp xếp không tăng | 100 (p) | 10.0s | 256M |
| 11 | Số nhỏ thứ k | 100 (p) | 1.0s | 256M |
| 12 | Số lớn thứ k | 100 (p) | 1.0s | 256M |
| 13 | Đếm số lần xuất hiện của phần tử trong mảng sắp xếp | 100 (p) | 1.0s | 256M |
| 14 | Thuật toán tìm kiếm tuyến tính | 100 (p) | 1.0s | 256M |
| 15 | Vị trí đầu tiên | 100 (p) | 1.0s | 256M |
| 16 | Vị trí cuối cùng | 100 (p) | 1.0s | 256M |
| 17 | Nhà gần nhất | 100 (p) | 1.0s | 256M |
| 18 | Điền số còn thiếu | 100 (p) | 1.0s | 256M |
| 19 | Số cặp bằng nhau | 100 (p) | 1.0s | 256M |
| 20 | Khiêu vũ | 100 (p) | 1.0s | 256M |
Sau kì nghỉ Tết, thầy Hải trở lại trường lớp dạy thuật toán và cấu trúc dữ liệu. Năm nay thầy Hải chào đón học sinh bằng một bài tập về mảng cơ bản.
Thầy Hải cho bạn 2 mảng \(A\) và \(B\) (mỗi mảng đều có \(n\) phần tử) và yêu cầu bạn in ra một mảng mới \(C\) gồm \(n\) phần tử trong đó phần tử thứ \(i\) có giá trị: \(C[i] = A[i] + B[i] ( 1 \le i \le n )\).
Test 1
5
1 2 3 4 5
4 5 3 2 10
5 7 6 6 15
Cho một dãy gồm n số nguyên dương \(A_1, A_2,…, A_n\). (\(N \le 10^5, A_i \le 10^9\)).
Hãy in số lớn nhất cùng chỉ số của nó, nếu có nhiều số lớn nhất thì in ra chỉ số của số đầu tiên gặp.
Test 1
6
91 451 43 3 451 54
451
2
Cho một dãy gồm n số nguyên dương \(A_1, A_2,…, A_n\). (\(N \le 10^5, Ai \le 10^9\)).
Hãy in số nhỏ nhất cùng chỉ số của nó, nếu có nhiều số nhỏ nhất thì in ra các chỉ số của nó.
Test 1
6
91 32 43 32 451 54
32
2 4
Cho một dãy gồm \(n\) số nguyên dương \(a_{1}, a_{2}, \ldots, a_{n}\) và số nguyên dương \(k\).
Hãy in số nhỏ nhất lớn hơn \(k\) cùng chỉ số của nó, nếu có nhiều số nhỏ nhất lớn hơn \(k\) thì in ra các chỉ số của nó.
Test 1
6 35
91 32 43 43 451 54
43
3 4
Cho một dãy gồm \(n\) số nguyên dương \(A_1,A_2,…,A_n\). (\(N\leq 10^5\),\(A_i\leq 10^9\)) và số \(x\).
Yêu cầu: Hãy đếm số lần xuất hiện của giá trị \(x\) trong mảng \(A\).
Test 1
6 451
91 451 43 3 451 54
2
Cho dãy số nguyên \(a\) gồm \(n\) phần tử được sắp xếp tăng dần. Hãy xác định giá trị \(x\) có xuất hiện trong mảng hay không ?
Test 1
10 10
1 61 126 217 2876 6127 39162 98126 712687 1000000000
100 6127 1 61 200 -10000 1 217 10000 1000000000
NO
YES
YES
YES
NO
NO
YES
YES
NO
YES
Cho dãy số nguyên \(a\) gồm \(n\) phần tử được sắp xếp tăng dần. Hãy xác định giá trị lớn nhất của \(i\) sao cho \(a_i \le x\). Nếu không có vị trí thõa mãn in ra \(0\).
Test 1
5 5
3 3 5 8 9
2 4 8 1 10
0
2
4
0
5
Cho dãy số nguyên \(a\) gồm \(n\) phần tử được sắp xếp tăng dần. Hãy xác định giá trị nhỏ nhất của \(i\) sao cho \(a_i \ge x\). Nếu không có vị trí thỏa mãn in ra \(n + 1\).
Test 1
5 5
3 3 5 8 9
2 4 8 1 10
1
3
4
1
6
Nhập vào một dãy \(N\) số nguyên \(A_{1},A_{2},...,A_{N}\).
Hãy in ra màn hình chỉ số phần tử âm đầu tiên và cuối cùng.
Test 1
7
7 -6 -4 19 -22 51 -82
2 7
Cho một dãy gồm \(n\) số nguyên dương \(A_1, A_2,…, A_n\). (\(N ≤ 10^4, A_i ≤ 10^9\)). Hãy in ra dãy số sau khi sắp xếp dãy số giảm dần (\(A_i ≥ A_{i+1}\)).
Test 1
6
91 451 43 3 451 54
451 451 91 54 43 3
Cho một dãy gồm \(N\) số nguyên dương \(A_1, A_2,…, A_N\).(\(N ≤ 10^4, A_i ≤ 10^9\)) và số \(K\) (\(K ≤ N\)). Hãy in ra số nhỏ thứ \(K\) trong dãy.
Test 1
6 4
91 451 43 3 452 54
91
Cho một dãy gồm \(N\) số nguyên dương \(A_1, A_2,…, A_N\).(\(N ≤ 10^4, A_i ≤ 10^9\)) và số \(K\) (\(K ≤ N\)). Hãy in ra số lớn thứ \(K\) trong dãy.
Test 1
6 2
91 451 43 3 452 54
451
Cho số nguyên dương \(N\) và mảng \(A\) đã được sắp xếp tăng dần. Cho số nguyên \(X\). Hãy đếm số lần \(X\) xuất hiện trong mảng \(A\).
2
5 3
1 2 3 3 3
5 4
1 2 3 5 6
3
0
Cho số nguyên dương \(N\), \(X\) và mảng \(A\) gồm \(N\) số nguyên. Hãy kiểm tra xem \(X\) có xuất hiện trong mảng \(A\) hay không? Nếu có thì in ra 1, còn ngược lại thì in ra 0.
5 3
1 2 3 4 5
1
Cho số nguyên dương \(N\) và mảng \(A\) đã được sắp xếp tăng dần. Cho số nguyên \(X\). Hãy tìm vị trí đầu tiên \(X\) xuất hiện trong mảng \(A\), nếu không tồn tại thì in ra -1.
2
5 3
1 2 3 3 3
5 4
1 2 3 5 6
3
-1
Cho số nguyên dương \(N\) và mảng \(A\) đã được sắp xếp tăng dần. Cho số nguyên \(X\). Hãy tìm vị trí cuối cùng \(X\) xuất hiện trong mảng \(A\), nếu không tồn tại thì in ra -1.
2
5 3
1 2 3 3 3
5 4
1 2 3 5 6
5
-1
Trên một con đường mới mở đã xuất hiện lác đác \(n\) căn nhà vừa xây xong. Người ta đánh địa chỉ các căn nhà bởi dãy \(a_{1}, a_{2}, a_{3}, ... , a_{n}\) bằng cách tính khoảng cách từ vị trí của căn nhà đến đầu đường theo đơn vị mét. Biết địa chỉ các căn nhà, hãy tìm khoảng cách giữa hai nhà gần nhau nhất.
3
1 6 3
2
3
9 3 6
3
Cho mảng \(a\) gồm \(n\) số nguyên dương. Gọi \(L, R\) là \(min\) và \(max\) các phần tử của \(a\). Nhiệm vụ của bạn là tìm số phần tử cần thiết cần thêm vào mảng để mảng có đầy đủ các số trong khoảng [\(L, R\)]. Ví dụ \(a\) = {\(5, 7, 9, 3, 6, 2\)} ta nhận được kết quả là \(2\) tương ứng với các số còn thiếu là \(4, 8\).
Những dòng kế tiếp đưa vào \(t\) bộ test. Mỗi bộ test gồm hai dòng:
2
5
4 5 3 8 6
3
2 1 3
1
0
Cho một mảng gồm \(n\) số nguyên dương \(a_{1}, a_{2}, a_{3},..., a_{n}\). Hỏi có bao nhiêu cặp số \(i < j\) và \(a_{i} = a_{j}\).
Lưu ý: Số lượng này có thể rất lớn nên sử dụng kiểu long long.
5
8 2 9 8 1
1
7
6 2 4 2 4 3 4
4
Trong lớp học có \(n\) bạn nam và \(m\) bạn nữ. Các bạn nam có chiều cao là \(a_{1}, a_{2},..., a_{n}\). Các bạn nữ có chiều cao là \(b_{1}, b_{2},..., b_{m}\). Nhân dịp lễ tổng kết cuối năm, cả lớp dự định tổ chức buổi khiêu vũ nhưng có điều kiện là trong một đôi khiêu vũ bất kỳ, bạn nam phải cao hơn bạn nữ. Và mỗi bạn không tham gia quá một đôi khiêu vũ. Hãy tính số lượng cặp đôi nhiều nhất thỏa mãn yêu cầu trên.
3 2
3 2 1
2 3
1
3 3
4 3 4
2 2 1
3