Luyện tập mảng 12-03
Số nhỏ thứ k
Nộp bàiCho 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.
Input
- Dòng đầu chứa số \(N, K\),
- Dòng thứ hai chứa \(N\) số nguyên dương \(A_1, A_2,…, A_N\).
Output
- Một dòng chứa dãy số nhỏ thứ \(K\) trong dãy.
Example
Test 1
Input
6 4
91 451 43 3 452 54
Output
91
Số lớn thứ k
Nộp bàiCho 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.
Input
- Dòng đầu chứa số \(N, K\),
- Dòng thứ hai chứa \(N\) số nguyên dương \(A_1, A_2,…, A_N\).
Output
- Một dòng chứa dãy số lớn thứ \(K\) trong dãy.
Example
Test 1
Input
6 2
91 451 43 3 452 54
Output
451
Đếm số âm dương
Nộp bàiCho dãy số \(A\) gồm \(N\) phần tử \(a_1,a_2,...,a_N\). Đếm số lượng số âm, số dương trong dãy số.
Input
- Dòng đầu tiên gồm số nguyên dương \(N\) \((N \le 10^5)\);
- Dòng thứ hai chứa \(N\) số nguyên \(a_1,a_2,..,a_N\) \((|a_i| \le 10^9)\)
Output
- In ra số lượng số âm, số lượng số dương.
Example
Test 1
Input
5
-2 4 0 5 4
Output
1 3
Vị trí số âm
Nộp bàiNhậ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.
Input
- Dòng đầu tiên chứa số nguyên \(N\).
- \(N\) dòng tiếp theo chứa \(N\) số nguyên \(A_{1},A_{2},...,A_{N}\).
Output
- In ra chỉ số phần tử âm đầu tiên và cuối cùng, nếu ko có phần tử dương nào thì in ra \(2\) số \(−1 −1\).
Constraints
- \(1 \leq n \leq 10000\)
- \(|A_{i}| \leq 10^{9}\)
Example
Test 1
Input
7
7 -6 -4 19 -22 51 -82
Output
2 7
Số lần xuất hiện 1
Nộp bàiCho một dãy gồm \(n\) số nguyên dương \(A_1,A_2,\ldots,A_n\).
Yêu cầu: Hãy in ra tất cả các số trong mảng \(A\) cùng với số lần xuất hiện của chúng.
Input
- Dòng đầu chứa số \(n\) (\(n\leq 10^5\)).
- Dòng thứ hai chứa \(n\) số nguyên dương \(A_1,A_2,\ldots,A_n\) (\(A_i\leq 10^6\)).
Output
- Gồm \(n\) dòng, mỗi dòng ghi số hạng thứ \(A_i\) và số lần xuất hiện của chúng.
Example
Test 1
Input
9
2 3 1 2 3 4 5 4 3
Output
2 2
3 3
1 1
2 2
3 3
4 2
5 1
4 2
3 3
Số lần xuất hiện 2
Nộp bàiCho một dãy gồm \(n\) số nguyên dương \(A_1,A_2,\ldots,A_n\)..
Yêu cầu: Hãy in ra các phần tử của mảng theo thứ tự tăng dần cùng với số lần xuất hiện của chúng, các số trùng nhau thì chỉ ghi một lần.
Input
- Dòng đầu chứa số \(n\) (\(n\leq 10^5\)).
- Dòng thứ hai chứa n số nguyên dương \(A_1,A_2,\ldots,A_n\) (\(A_i\leq 10^6\)).
Output
- Gồm \(n\) dòng, mỗi dòng ghi số hạng thứ \(A_i\) và số lần xuất hiện của chúng.
Example
Test 1
Input
9
2 3 1 2 3 4 5 4 3
Output
1 1
2 2
3 3
4 2
5 1
Đếm cặp đôi (HSG'20)
Nộp bàiCho dãy số \(A\) gồm \(n\) phần tử nguyên dương \(A_1,A_2,…,A_n\). Mỗi phần tử có giá trị không vượt quá \(10^9\) và \(n≤ 10^5\). Một cặp số được gọi là cặp tương đồng với \(x\), nếu cặp số này có tổng bằng số \(x\) cho trước nào đó.
Yêu cầu: Hãy đếm xem trong dãy số \(A\) có bao nhiêu cặp số (\(A_i;A_j\)) tương đồng với \(x\) (có nghĩa là \(A_i+ A_j=x\)) với \(i < j\).
Input
- Dòng đầu tiên chứa dãy số \(n,x\) (\(n≤10^5,x≤10^6\)).
- Dòng thứ 2 chứa \(n\) phần tử của dãy số \(A\) (\(A_i≤10^9\)).
Output
- Ghi ra một số nguyên là cặp đôi tương đồng của dãy số.
Example
Test 1
Input
7 6
1 2 4 3 4 5 3
Output
4
Tích của số lớn nhất và nhỏ nhất của 2 mảng
Nộp bàiCho mảng \(a\) gồm \(n\) phần tử và mảng \(b\) gồm \(m\) phần tử. Tìm tích giữa số lớn nhất trong mảng \(a\) và số nhỏ nhất trong mảng \(b\).
Input
- Dòng đầu tiên là số lượng test case \(t\) \((1 \le t \le 100)\).
-
Mỗi test case gồm \(3\) dòng:
- Dòng đầu tiên là \(n\) và \(m\). \((1 \le n, m \le 10^6)\)
- Dòng thứ \(2\) là các phần tử trong mảng \(a\). \((-10^9 \le a_i \le 10^9)\)
- Dòng thứ \(3\) là các phần tử trong mảng \(b\). \((-10^9 \le b_i \le 10^9)\)
Output
- Mỗi test case in kết quả trên một dòng.
Example
Test 1
Input
1
3 3
1 2 3
-2 3 4
Output
-6
Đếm số lần xuất hiện của phần tử trong mảng sắp xếp
Nộp bàiCho 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\).
Input
- Dòng đầu tiên đưa vào số lượng bộ test \(T\) (\(1 \leq T \leq 100\)).
- Dòng đầu mỗi bộ test nhập vào số nguyên \(N\) và \(X\) (\(1 \leq N \leq 10^3, 1 \leq X \leq 5000\)).
- Dòng thứ hai mỗi bộ test nhập \(N\) số nguyên \(A_i\) (\(1 \leq i \leq N, 1 \leq A_i \leq 5000\)).
Output
- In ra kết quả theo yêu cầu đề bài.
Example
Test 1
Input
2
5 3
1 2 3 3 3
5 4
1 2 3 5 6
Output
3
0
Counting sort
Nộp bàiSắp xếp mảng gồm \(n\) số nguyên chỉ bao gồm các số \(0, 1, 2\).
Input
- Dòng đầu tiên là số lượng test case \(t\) \((t \le 100)\).
- Mỗi test case gồm 2 dòng:
- dòng đầu tiên là số lượng phần tử trong mảng \((1 \le n \le 1000)\).
- Dòng thứ 2 là các phần tử trong mảng.
Output
- In ra các phần tử trong dãy được sắp xếp tăng dần.
Example
Test 1
Input
2
5
1 1 0 0 2
6
1 1 1 0 0 2
Output
0 0 1 1 2
0 0 1 1 1 2