[DSA T6 2024]. TEST 5. SẮP XẾP & TÌM KIẾM, THAM LAM
Chia đôi số nguyên
Nộp bàiPoint: 1
Phép chia đôi 1 số nguyên N được định nghĩa là việc bạn sẽ tách các chữ số của N thành 2 phần trước và sau, nếu số lượng chữ số của N là số chẵn bạn có thể chia đều số lượng chữ số của N thành 2 phần, ngược lại nếu số lượng chữ số của N là số lẻ thì chữ số đứng chính giữa sẽ bị bỏ đi. Trong trường hợp nếu số ở phần sau có số 0 ở đầu thì nó sẽ được loại bỏ.
Ví dụ : N = 123456 sẽ được chia đôi làm 2 số là 123 và 456, N = 12345 sẽ được chia đôi làm 2 số là 12 và 45, chữ số 3 đứng chính giữa sẽ bị bỏ đi Bây giờ 28Tech muốn bạn liệt kê những số thỏa mãn tổng 2 số của phép chia đôi của nó là 1 số nguyên tố trong đoạn [1, K), lưu ý ko xét cận K
Ví dụ : số 126 thỏa mãn vì 2 số tạo bởi phép chia đôi của nó là 1 và 6 có tổng bằng 7 là 1 số nguyên tố. Số10203 thỏa mãn vì 2 số tạo bởi phép chia đôi của nó là 10 và 3 có tổng bằng 13 là 1 số nguyên tố.
Đầu vào
Dòng duy nhất chứa số nguyên K
Giới hạn
1<=K<=10^6
Đầu ra
In ra các số thỏa mãn viết cách nhau 1 khoảng trắng
Ví dụ :
Input 01
102
Output 01
11 12 14 16 20 21 23 25 29 30 32 34 38 41 43 47 49 50 52 56 58 61 65 67 70 74 76 83 85 89 92 94 98 101
[Tham Lam]. Bài 6. Max product of two array
Nộp bàiPoint: 1
Cho mảng A[], B[] đều có N phần tử. Nhiệm vụ của bạn là tìm giá trị lớn nhất của tích A[0] x B[0] + A[1] x B[1] + .. + A[N-1] x B[N-1], bạn được phép thay đổi thứ tự các phần tử trong mảng A[] và B[] trước khi tính toán.
Đầu vào
Dòng 1 chứa số nguyên dương N
Dòng 2 chứa N số nguyên của mảng A[]
Dòng 3 chứa N số nguyên của mảng B[]
Giới hạn
1<=N<=10^6
0<=A[i], B[i]<=10^6
Đầu ra
In ra đáp án của bài toán
Ví dụ :
Input 01
3
1 2 1
2 6 6
Output 01
20
[Tham Lam]. Bài 3. Tích lớn nhất
Nộp bàiPoint: 1
Cho mảng A[] gồm N phần tử, nhiệm vụ của bạn là sắp xếp lại dãy số này để tổng A[0] * 0 + A[1] * 1 + A[2] * 2 + ... + A[N - 1] * (N - 1) đạt giá trị lớn nhất
Đầu vào
Dòng 1 là N
Dòng 2 là N số trong mảng A[] viết cách nhau 1 dấu cách
Giới hạn
1<=N<=10^6
1<=A[i]<=10^9
Đầu ra
In ra kết quả lớn nhất đạt được sau khi chia dư cho 10^9 + 7
Ví dụ :
Input 01
5
1 1 2 1 3
Output 01
21
[Tham Lam]. Bài 49. Mảng bằng nhau
Nộp bàiPoint: 1
28Tech định nghĩa 2 mảng bằng nhau là 2 mảng mà tích các phần tử trong 2 mảng này bằng nhau. Cho 2 mảng A[], B[] gồm N, M phần tử, bạn hãy xác định xem mảng A[], B[] có bằng nhau hay không, nếu có in 28tech, ngược lại in ra 29tech.
Đầu vào
Dòng 1 là N và M
Dòng 2 gồm N số trong mảng A[]
Dòng 3 gồm M số trong mảng B[]
Giới hạn
1<=N,M<=10^5
1<=A[i],B[i]<=6.10^18
Đầu ra
In ra 28tech hoặc 29tech theo yêu cầu
Ví dụ :
Input 01
2 3
9 3
3 3 3
Output 01
28tech
[Tham Lam]. Bài 4. Chia mảng
Nộp bàiPoint: 1
Cho mảng A[] gồm N phần tử và số nguyên K, bạn hãy chia mảng thành 2 tập con (không cần liên tiếp) có K và N - K phần tử sao cho độ chênh lệch giữa tổng của 2 tập con là lớn nhất có thể.
Đầu vào
Dòng 1 chứa 2 số nguyên N và K
Dòng thứ 2 gồm N số của mảng A[]
Giới hạn
1<=K<=N<=10^6
0<=A[i]<=10^9
Đầu ra
In ra đáp án của bài toán
Ví dụ :
Input 01
5 3
2 8 9 1 3
Output 01
17