Gửi bài giải
Điểm:
1,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Tác giả:
Nguồn bài:
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch
Cho mảng số nguyên A[] gồm N phần tử, nhiệm vụ của bạn là chèn phần tử X vào vị trí K trong mảng sau đó in ra mảng. Lưu ý K bắt đầu từ 1
Tham khảo về thuật toán chèn : Chèn phần tử vào mảng
Đầu vào
Dòng đầu tiên là 3 số nguyên dương N, X, K
Dòng thứ 2 gồm N số nguyên viết cách nhau một vài khoảng trắng
Giới hạn
1<=K<=N<=1000
-10^3<=A[i], X<=10^3
Đầu ra
In ra mảng sau khi chèn
Ví dụ :
Input 01
10 28 5
1 2 3 4 5 6 7 8 9 10
Output 01
1 2 3 4 28 5 6 7 8 9 10
Bình luận
include <bits/stdc++.h>
define ll long long
define fi first
define se second
define pa pair<int,int>
define vec vector<int>
define el cout<<'\n'
define fast iosbase::syncwith_stdio(0); cin.tie(0); cout.tie(0);
using namespace std;
void doc(){ fast freopen("test.inp", "r", stdin); freopen("test.out", "w", stdout); }
int n,x,k; int a[1001];
int main(){ //doc(); cin>>n>>x>>k; for(int i=1; i<=n; i++) cin>>a[i]; for(int i=1; i<=n; i++){ if(i == k) cout<<x<<" "; cout<<a[i]<<" "; } return 0; }
include <iostream>
include <iomanip>
include <math.h >
include <climits>
using namespace std; long long a[10000005]; int main() { int n, x, k; cin >> n >> x >> k; for (int i = 0; i < n; i++) { cin >> a[i]; } for (int i = n - 1; i >= k; i--) { a[i + 1] = a[i]; } a[k] = x; ++n;
} mọi người xem giúp e với ạaa em nộp miết mã cứ báo sai ạa
À bạn bị sai chỗ chỉ số đó. Đề yêu cầu K tính từ 1, nhưng trong code bạn lại xử lý mảng từ chỉ số 0.
Cụ thể: Khi bạn for (int i = n - 1; i >= k; i--) thì đang dời sai vị trí.
Với K = 5 (tức là muốn chèn vào vị trí số 5 – tính từ 1), thì thực ra cần dời từ vị trí k-1 trở đi.
Fix nhẹ bằng cách:
for (int i = n - 1; i >= k - 1; i--) { a[i + 1] = a[i]; } a[k - 1] = x;
Ngoài ra: Bạn ++n; rồi duyệt i < n là đúng – nhưng khi in ra cũng cần in từ 0 -> n-1, không được lệch.
Không cần dùng mảng long long a[1e7] làm gì cho nặng RAM đề chỉ cần mảng a[1005] là đủ.
Đảm bảo dấu cách đúng chuẩn và không bị in thừa ở cuối dòng nữa là AC thôi.
bài trong contest và bài trong vid chữa python là hai bài khác nhau
Mọi người giúp e với ạ. E không biết sao sai hết khi nộp ạ:))
include <bits/stdc++.h>
using namespace std;
define ll long long
const int MOD = 1e9 + 7;
int a[1000006];
int main() { iosbase::syncwith_stdio(0); cin.tie(NULL);
}
mọi người ơi, đừng gửi code vào đây nữa, bài này có gợi ý rồi thì nên để mọi người tự suy nghĩ thì hơn (~ ̄▽ ̄)~💻
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.