全re了求助

P1440 求m区间内的最小值

下面是代码: ``` #include <bits/stdc++.h> #define ll long long using namespace std; int n,m; int a[2000005]; deque<int> q; int xpush(int x); int minvalue(int x); int main(){ cin >> n >> m; for(int i = 1;i <= n;i++) scanf("%d",&a[i]); for(int i = 1;i <= n;i++) { printf("%d\n",minvalue(i)); } return 0; } int xpush(int x) { while(!q.empty() && q.back() > x) q.pop_back(); q.push_back(x); } int minvalue(int x) { int r = x-1; int l = r - m +1; if(l <= 0) l = 1; //特殊处理r = 0 if(r == 0) return 0; int i = l,j = r; q.clear();//队列清空 for(int i = l;i <=r;i++) { xpush(a[i]); } return q.front(); } ```
by mooktian @ 2023-12-15 10:53:38


@[mooktian](/user/890321) xpush 函数没有返回值。这种情况不开 O2 正常,开 O2 会 RE。验证码 xfre 祭。
by xiaoshumiao @ 2023-12-15 11:25:04


@[mooktian](/user/890321) 改成 void 就可以了。
by xiaoshumiao @ 2023-12-15 11:27:27


@[xiaoshumiao](/user/1008513) 谢谢!
by mooktian @ 2023-12-15 12:42:51


|