This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<bits/stdc++.h>
#define endl '\n'
using namespace std;
typedef long long ll;
void speed()
{
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
}
const int maxn = 1e6 + 10;
int n, m, w[maxn];
void solve()
{
cin >> n >> m;
for (int i = 1; i <= n; i ++)
{
cin >> w[i];
}
stack < int > st;
vector < pair < int, int > > fun;
for (int i = 1; i <= n; i ++)
for (int j = i + 1; j <= n; j ++)
if (w[i] > w[j])
fun.push_back({i, j});
/**for (int i = 1; i <= n; i ++)
{
while(!st.empty() && w[st.top()] <= w[i])
st.pop();
if (!st.empty())
{
fun.push_back({st.top(), i});
}
st.push(i);
}*/
for (int i = 1; i <= m; i ++)
{
int l, r, k;
cin >> l >> r >> k;
int mx = 0;
for (int i = l; i <= r; i ++)
for (int j = i + 1; j <= r; j ++)
{
if (w[i] > w[j])
mx = max(mx, w[i] + w[j]);
}
/**for (pair < int, int > cur : fun)
{
if (cur.first >= l && cur.second <= r)
mx = max(mx, w[l] + w[r]);
}*/
cout << (mx <= k) << endl;
}
}
int main()
{
speed();
solve();
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |