区间最大数:
给出一列数共N个,将其从1到N编号,进行M次查询X, Y,给出第X个数到第Y个数间最大的数。
一组测试数据,第一行输入N,M(1<=N, M<=10^5),第二行N个数;之后M行,每行分别为X,Y。给出一列数共N个,将其从1到N编号,进行M次查询X, Y,给出第X个数到第Y个数间最大的数。
对于每个[X, Y]输出编号在X和Y之间(包括X,Y)的最大值。每行输出一个结果。
样例输入
5 2
4 3 1 2 5
1 4
2 5
样例输出
4
5
我的代码:
#include <stdio.h>
int a[10010];
int main()
{
int x,y,m,n;
int max=0;
scanf("%d%d",&n,&m);
for(int i=1;i<=n;i++)
{
scanf("%d",&a[i]);
}
for(int i=1;i<=m;i++)
{
scanf("%d%d",&x,&y);
for(int j=x;j<=y;j++)
{
if(a[j]>=max)
max=a[j];
}
printf("%d\n",max);
}
return 0;
}
oj报错:Runtime Error:[ERROR] A Not allowed system call: runid:14130 callid:240。
为什吗?求解释,如何解决?
本人菜鸟一枚求各位大神帮忙解决