要注意記憶體使用量喔^^
#include<stdio.h> #include<stdlib.h> #include<string.h> int que[1000001]; bool test[1000001]; int main() { int T;scanf("%d",&T); for(int lx=1;lx<=T;lx++) { int cnt; int rcnt=0; int ly; scanf("%d",&cnt); memset(test,false,sizeof(test)); int max,min; for(ly=1;ly<=cnt;ly++) scanf("%d",&que[ly]); max=que[1]; for(ly=2;ly<=cnt;ly++) { if(max<=que[ly]) { max=que[ly]; test[ly]=true; } } min=que[cnt]; for(ly=cnt-1;ly>=1;ly--) { if(min>=que[ly]) min=que[ly]; else test[ly]=false; } for(ly=2;ly<=cnt-1;ly++) rcnt+=(test[ly]==true); printf("%d\n",rcnt); } return 0; }
沒有留言:
張貼留言