Gửi bài giải
Điểm:
0,00
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
64M
Input:
stdin
Output:
stdout
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C++
Đề bài: Cho mảng ~a~ gồm ~n~ phần tử (~1 \leq n \leq 3 \cdot 10^6~, ~1 \leq a_i \leq 2 \cdot 10^9~) và một số nguyên ~x~ (~1 \leq x \leq 10^9~). Sắp xếp các phần tử mảng ~a~ và tách ra thành hai phần:
- Phần
Left
gồm các phần tử ~\leq x~. - Phần
Right
gồm các phần tử ~> x~.
Debug code sau:
#include <bits/stdc++.h>
using namespace std;
int main(){
ios_base::sync_with_stdio(false);
cin.tie(0);
int x; cin >> x;
int n; cin >> n;
vector<int> L; // element less than or equal to x
vector<int> R; // element greater than x
for(int i = 1; i <= n; i++){
int y; cin >> y;
if(y <= x) L.push_back(y);
if(y > x) R.push_back(y);
}
sort(L.begin(), L.end());
sort(R.begin(), R.end());
cout << "Left: ";
for(int i=0; i<=L.size() - 1; i++) cout << L[i] << ' ';
cout << endl;
cout << "Right: ";
for(int i=0; i<=R.size() - 1; i++) cout << R[i] << ' ';
return 0;
}
Bình luận