Gửi bài giải
Điểm:
0,00
Giới hạn thời gian:
2.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 dãy ~a~ gồm ~n~ (~1 \leq n \leq 3 \cdot 10^5~, ~1 \leq a_i \leq 10^9~) phần tử và một số nguyên ~x~ (~1 \leq x \leq 10^9~). Với mọi ~i~ từ ~1~ đến n, tìm phần tử bé nhất ~\geq x~ trong đoạn tiền tố gồm các phần tử từ ~1~ đến ~i~. Nếu không có phần tử nào ~\geq x~ thì in ra ~-1~.
Debug code sau:
#include <bits/stdc++.h>
using namespace std;
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
int n, targ; cin >> n >> targ;
set<int> s;
for (int i = 1; i <= n; i++) {
int a; cin >> a;
s.insert(a);
auto it = lower_bound(s.begin(), s.end(), targ);
if (it != s.end()) cout << *it << " ";
else cout << -1 << " ";
}
return 0;
}
Bình luận