Điểm:
220
Thời gian:
1.5s
Bộ nhớ:
1G
Input:
bàn phím
Output:
màn hình
\(\color{blue}{Tade}\) là một thủ thư làm việc rất chuyên cần ở thư viện \(Abcdef\). Hôm nay, \(\color{blue}{Tade}\) được \(Big Boss\) giao nhiệm vụ sắp xếp lại đống sách mới được gửi đến. Khổ nỗi, \(Boss\) lại yêu cầu \(\color{blue}{Tade}\) sắp xếp \(10^7\) đống sách theo thứ tự không giảm trong vòng \(1s\), mà trong thời gian đó anh ta chỉ có thể sắp xếp được \(10^6\) quyển thôi.
\(\color{blue}{Tade}\) đành phải nhờ đến các bạn lqdcoder giúp đỡ, các bạn hãy giúp anh ấy nhé!
Input
-
Dòng đầu chứa một số tự nhiên \(N (1\le N\le 10^7)\) là số sách mà Tade cần phải sắp xếp.
-
Dòng tiếp theo chứa \(N\) số tự nhiên \(a_i (1\le a_i\le 100)\), là số thứ tự của mỗi quyển sách. Lưu ý, hai quyển sách có thể có cùng một số thứ tự.
Output
- Một dòng chứa \(N\) số là các số thứ tự được sắp xếp không giảm của \(N\) quyển sách đó.
Example
Test 1
Input
6
1 5 4 2 3 4
Output
1 2 3 4 4 5
Bình luận
cứ thêm sort là ko cần thêm thần chú =))
answer full AC
include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
ll n;
cin >> n;
vector<ll> a(n);
for (ll i = 0; i < n; i++)
{
cin >> a[i];
}
sort(a.begin(), a.end());
for (ll i = 0; i < n; i++)
{
cout << a[i] << " ";
}
}
thêm cả ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0); là hết tle =))
sao sort k dc;v
bựa z, dùng sort phải thêm cả thần chú mới AC
include <bits/stdc++.h>
include <vector>
include <sstream> // Thư viện để sử dụng stringstream
using namespace std;
long long n,i,j;
int main() {
// Tối ưu hóa nhập xuất
ios::sync_with_stdio(false);
cin.tie(nullptr);
}
Giải thích:
Tối ưu hóa I/O: Sử dụng ios::sync_with_stdio(false) và cin.tie(nullptr) để tăng tốc độ nhập và xuất dữ liệu.
Sử dụng stringstream: Thay vì in trực tiếp từng số, ta sử dụng stringstream để xây dựng chuỗi kết quả và chỉ in một lần. Điều này giúp giảm đáng kể thời gian in cho số lượng lớn dữ liệu.
sort ko cần thần chú cx ac 😆
Solution
Với mỗi số nhập vào, tăng giá trị của nó thêm 1 trong mảng đếm phân phối (tạm gọi mảng đếm phân phối là \(D\)).
For từ \(1\) đến \(100\) (Vì A[i] \(\leq\) \(100\)), với mỗi giá trị i có \(D[i]\)>0, in ra i \(D[i]\) lần (Ví dụ: \(D[3]\) = 5 (Xuất hiện 5 lần) thì in ra 3 3 3 3 3)
\(AC code (Python):\)
ios_base::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
Thần chú :)))
Đang TLE 4/5 test, cho vào cái AC luôn
Dùng Vector sort cũng được
Đang TLE cho thần chú vào cái AC luôn :)))))
Anh tăng thời gian lên chút được không anh?
Sort trong python bị quá thời gian rồi anh ạ
10 bình luận nữa