# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
173295 | mosiashvililuka | Hedgehog Daniyar and Algorithms (IZhO19_sortbooks) | C++14 | 758 ms | 32540 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include<bits/stdc++.h>
using namespace std;
int a,b,c,d,e,f[1000009],i,j,zx,xc,qq,l,r,ar[1000009];
int main(){
scanf("%d%d\n",&a,&b);
for(i=1; i<=a; i++) scanf("%d",&f[i]);
scanf("\n");
if(a<=5000){
short z[5009][5009],x[5009][5009];
int mx[5009][5009];
for(i=1; i<=a; i++){
z[i][0]=0;
for(j=1; j<i; j++){
if(f[j]<=f[i]) z[i][j]=z[i][j-1]+1; else z[i][j]=z[i][j-1];
}
x[i][a+1]=0;
for(j=a; j>i; j--){
if(f[j]<f[i]) x[i][j]=x[i][j+1]+1; else x[i][j]=x[i][j+1];
}
}
for(i=1; i<=a; i++){
mx[i][i]=f[i];
for(j=i-1; j>=1; j--){
if(mx[j+1][i]<=f[j]) mx[j][i]=f[j]; else mx[j][i]=mx[j+1][i];
}
}
for(qq=1; qq<=b; qq++){
scanf("%d%d%d\n",&l,&r,&e);
// return 0;
bool bo=0;
for(i=l; i<=r; i++){
c=z[i][i-1];
c=c-z[i][l-1];
// if(qq==2) cout<<f[i]<<" "<<c<<endl;
if(l+c<i){
if(mx[l][i-1]+f[i]>e){
bo=1;
break;
}
}
}
if(bo==0) printf("1\n"); else printf("0\n");
}
}
ar[1]=1;
for(i=2; i<=a; i++){
if(f[i-1]<=f[i]) ar[i]=ar[i-1]; else ar[i]=i;
}
for(qq=1; qq<=b; qq++){
scanf("%d%d%d\n",&l,&r,&e);
if(ar[r]<=l){
printf("1\n");
}else{
printf("0\n");
}
}
return 0;
}
컴파일 시 표준 에러 (stderr) 메시지
# | 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... |