Bài kiểm tra số 2 - k1948g1 - đề 1
Sắp đặt xâu ký tự
Nộp bàiPoint: 4
Cho xâu kí tự chỉ bao gồm các kí tự in thường, hãy kiểm tra xem có thể sắp đặt lại các kí tự trong xâu sao cho không có 2 kí tự kề nhau nào giống nhau hay không?
Đầu vào: Dòng duy nhất chứa xâu S
Ràng buộc: 1<=len(S)<=10000;
Đầu ra: Nếu có thể sắp đặt lại xâu kí tự in ra YES, ngược lại in ra NO.
Input:
aqeaaqwq
Output:
YES
Căn hộ (kỹ thuật sắp xếp - tìm kiếm)
Nộp bàiPoint: 3
Có n người nộp đơn và m căn hộ miễn phí. Nhiệm vụ của bạn là phân phối các căn hộ sao cho càng nhiều người đăng ký sẽ nhận được căn hộ càng tốt. Mỗi người nộp đơn có một kích thước căn hộ mong muốn và họ sẽ chấp nhận bất kỳ căn hộ nào có diện tích gần với kích thước mong muốn.
Định dạng đầu vào:
Dòng nhập đầu tiên có ba số nguyên n, m và k: số người đăng ký, số căn hộ và chênh lệch tối đa cho phép.
Dòng tiếp theo chứa n số nguyên a1, a2,.., an: diện tích căn hộ mong muốn của mỗi người đăng ký. Nếu kích thước mong muốn của người nộp đơn là x, người đó sẽ chấp nhận bất kỳ căn hộ nào có kích thước từ x - k đến x + k.
Dòng cuối cùng ghi m số nguyên b1, b2,..., bm: diện tích từng căn hộ.
Ràng buộc: 1 <= n, m ≤ 10^5; 0 <= k ≤ 10^9; 1 <= ai, bi ≤ 10^9
In một số nguyên: số người nộp đơn sẽ nhận được một căn hộ.
Input:
4 3 5
60 45 80 60
30 60 75
Output:
2
Cặp số có hiệu bằng x (kỹ thuật 2 con trỏ, sắp xếp - tìm kiếm)
Nộp bàiPoint: 3
Cho mảng AI gồm N phần tử và số X. Nhiệm vụ của bạn là tìm cặp phần tử A[i] - A[j] = X. Nếu tồn tại A[i] - A[j] = X đưa ra 1, ngược lại đưa ra -1.
Đầu vào: Dòng thứ nhất là cặp số N, X; Dòng tiếp theo là N số Ali) là các phần tử của mảng A.
Ràng buộc: 1≤ N ≤10^5; 1≤ X, A[i] ≤10^5.
Input:
5 4
8 4 3 1 7
Output:
1