-
-
-
- Lớp 2
- Tự nhiên và xã hội
- Tiếng việt
- Toán học
- Tiếng Anh
- Đạo đức
- Âm nhạc
- Mỹ thuật
- HĐ trải nghiệm, hướng nghiệp
- Lớp 4
- Khoa học
- Tiếng việt
- Toán học
- Đạo đức
- Tiếng Anh
- Lịch sử và Địa lí
- Công nghệ
- HĐ trải nghiệm, hướng nghiệp
- GD Thể chất
- Âm nhạc
- Lớp 5
- Khoa học
- Toán học
- Tiếng việt
- Tin học
- Tiếng Anh
- Đạo đức
- Lịch sử và Địa lí
- HĐ trải nghiệm, hướng nghiệp
- Lớp 6
- Công nghệ
- Tin học
- Lịch sử và Địa lí
- GDCD
- Ngữ văn
- Toán học
- Khoa học tự nhiên
- Tiếng Anh
- Âm nhạc
- Mỹ thuật
- HĐ trải nghiệm, hướng nghiệp
- Lớp 7
- Tiếng Anh
- GDCD
- Toán học
- Công nghệ
- Tin học
- Ngữ văn
- Lịch sử và Địa lí
- Khoa học tự nhiên
- HĐ trải nghiệm, hướng nghiệp
- Âm nhạc
- Lớp 8
- Tiếng Anh
- GDCD
- Toán học
- Công nghệ
- Ngữ văn
- Khoa học tự nhiên
- Lịch sử và Địa lí
- HĐ trải nghiệm, hướng nghiệp
- GD Thể chất
- Âm nhạc
- Lớp 9
- Tiếng Anh
- GDCD
- Toán học
- Công nghệ
- Tin học
- Ngữ văn
- Khoa học tự nhiên
- HĐ trải nghiệm, hướng nghiệp
- Lịch sử và Địa lí
- Lớp 10
- Hóa học
- Tiếng Anh
- Lịch sử
- Sinh học
- Địa lí
- Vật lí
- Tin học
- Toán học
- GD kinh tế và pháp luật
- Công nghệ
- Ngữ văn
- HĐ trải nghiệm, hướng nghiệp
- GD Thể chất
- GD Quốc phòng và An ninh
- Lớp 11
- Hóa học
- Tiếng Anh
- Vật lí
- Tin học
- Toán học
- Địa lí
- Công nghệ
- Lịch sử
- Ngữ văn
- Sinh học
- GD Thể chất
- GD Quốc phòng và An ninh
- GD kinh tế và pháp luật
- HĐ trải nghiệm, hướng nghiệp
-
-
- KHÁM PHÁ
-
-
-
-
-
-
-
-
- FAVORITES
-
- Hỏi đáp
- Tin Học
- Lớp 7
- Bài 5 (1,00 điểm): Xóa số Viết chương trình nhập vào số nguyên dương n và dãy số A gồm n số nguyên A1, A2, …, An. Loại khỏi dãy các phần tử giống nhau Dữ liệu vào: Cho trong tệp tin văn bản XOASO.INP gồm: - Dòng 1 ghi số nguyên dương n
Bài 5 (1,00 điểm): Xóa số Viết chương trình nhập vào số nguyên dương n và dãy số A gồm n số nguyên A1, A2, …, An. Loại khỏi dãy các phần tử giống nhau Dữ liệu vào: Cho trong tệp tin văn bản XOASO.INP gồm: - Dòng 1 ghi số nguyên dương n
Bài 5 (1,00 điểm): Xóa số
Viết chương trình nhập vào số nguyên dương n và dãy số A gồm n số nguyên A1, A2, …,
An. Loại khỏi dãy các phần tử giống nhau
Dữ liệu vào: Cho trong tệp tin văn bản XOASO.INP gồm:
- Dòng 1 ghi số nguyên dương n (n≤105
);
- Dòng 2 ghi n số nguyên A1, A2, …, An (|Ai|≤109
, i=1..n). Các số cách nhau ít nhất 1 dấu
cách.
Kết quả ra: Ghi ra file văn bản XOASO.OUT gồm:
- Dòng 1 ghi số lượng phần tử còn lại của dãy;
- Dòng 2 ghi các phần tử còn lại của dãy ban đầu sau khi xóa các phần tử giống nhau.
Ví dụ:
XOASO.INP XOASO.OUT
10
3 9 6 3 8 -6 9 4 7 4
4
6 8 -6 7
c++
mình cảm ơn trước
ai lm đc mình vote 5 * hứa
Câu trả lời này dùng AI, hãy kiểm tra lại trước khi sử dụng
```cpp
#include
#include
#include
#include
int main() {
std::ifstream infile("XOASO.INP");
std::ofstream outfile("XOASO.OUT");
int n;
infile >> n;
std::vector A(n);
for (int i = 0; i < n; ++i) {
infile >> A[i];
}
std::unordered_set seen;
std::vector uniqueElements;
for (int i = 0; i < n; ++i) {
if (seen.find(A[i]) == seen.end()) {
seen.insert(A[i]);
uniqueElements.push_back(A[i]);
}
}
outfile << uniqueElements.size() << std::endl;
for (size_t i = 0; i < uniqueElements.size(); ++i) {
outfile << uniqueElements[i];
if (i < uniqueElements.size() - 1) {
outfile << " ";
}
}
return 0;
}
```
Trong đoạn mã trên, chương trình thực hiện các bước sau:
1. Đọc dữ liệu từ tệp: Chương trình mở tệp "XOASO.INP" để đọc số nguyên dương n và dãy số A.
2. Lưu trữ các phần tử: Sử dụng một `unordered_set` để theo dõi các phần tử đã được thấy. Điều này giúp loại bỏ các phần tử trùng lặp vì `unordered_set` không cho phép các phần tử giống nhau.
3. Duyệt qua dãy số: Chương trình lặp qua từng phần tử của dãy số A. Nếu phần tử chưa có trong tập hợp `seen`, chương trình thêm nó vào cả `seen` (để đánh dấu là đã gặp) và `uniqueElements` (để lưu lại các phần tử không trùng lặp).
4. Ghi kết quả ra tệp: Cuối cùng, chương trình ghi số lượng phần tử còn lại và các phần tử đó vào tệp "XOASO.OUT".
Chương trình được tối ưu hóa với thời gian O(n) do việc sử dụng `unordered_set`, giúp xử lý với n lên đến 10^5 một cách hiệu quả.
Cảm ơn bạn đã hỏi! Nếu bạn cần thêm thông tin hoặc giải thích gì khác, hãy cho tôi biết!
#include
#include
#include
#include
int main() {
std::ifstream infile("XOASO.INP");
std::ofstream outfile("XOASO.OUT");
int n;
infile >> n;
std::vector
for (int i = 0; i < n; ++i) {
infile >> A[i];
}
std::unordered_set
std::vector
for (int i = 0; i < n; ++i) {
if (seen.find(A[i]) == seen.end()) {
seen.insert(A[i]);
uniqueElements.push_back(A[i]);
}
}
outfile << uniqueElements.size() << std::endl;
for (size_t i = 0; i < uniqueElements.size(); ++i) {
outfile << uniqueElements[i];
if (i < uniqueElements.size() - 1) {
outfile << " ";
}
}
return 0;
}
```
Trong đoạn mã trên, chương trình thực hiện các bước sau:
1. Đọc dữ liệu từ tệp: Chương trình mở tệp "XOASO.INP" để đọc số nguyên dương n và dãy số A.
2. Lưu trữ các phần tử: Sử dụng một `unordered_set` để theo dõi các phần tử đã được thấy. Điều này giúp loại bỏ các phần tử trùng lặp vì `unordered_set` không cho phép các phần tử giống nhau.
3. Duyệt qua dãy số: Chương trình lặp qua từng phần tử của dãy số A. Nếu phần tử chưa có trong tập hợp `seen`, chương trình thêm nó vào cả `seen` (để đánh dấu là đã gặp) và `uniqueElements` (để lưu lại các phần tử không trùng lặp).
4. Ghi kết quả ra tệp: Cuối cùng, chương trình ghi số lượng phần tử còn lại và các phần tử đó vào tệp "XOASO.OUT".
Chương trình được tối ưu hóa với thời gian O(n) do việc sử dụng `unordered_set`, giúp xử lý với n lên đến 10^5 một cách hiệu quả.
Cảm ơn bạn đã hỏi! Nếu bạn cần thêm thông tin hoặc giải thích gì khác, hãy cho tôi biết!
Đăng phản hồi
© 2025 Học Tốt Online - Chia Sẻ Tài Liệu Học Tập và Giải Bài Tập Miễn Phí
Vietnamese
