Help me in solving DSAAGP11 problem

My issue

i am getting the output in ascending order but its asking in descending order can someone please help solve this problem

My code

#include <stdio.h>

int main(void) {
	// your code goes here
	int N;
	scanf("%d",&N);
	int a[N];
	for(int i=0;i<N;i++){
	    scanf("%d",&a[i]);
	}
	
	int max_from_right = a[N-1];
	printf("%d ",max_from_right);
	
	for(int i=N-2;i>=0;i--){
	    if(a[i]>max_from_right){
	        max_from_right = a[i];
	        printf("%d ",max_from_right);
	    }
	}

}


Learning course: Data structures & Algorithms lab
Problem Link: https://www.codechef.com/learn/course/muj-dsa-c/MUJDSAC06/problems/DSAAGP11