
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.StreamTokenizer;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.TreeSet;
import java.lang.Integer;

public class multithreading_kp_java {

    static StreamTokenizer st = new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));

    static int nextInt() {
        try {
            st.nextToken();
            return (int) st.nval;
        } catch (IOException ex) {
            return 0;
        }
    }

    public static void main(String[] args) {
        int n = nextInt();
        ArrayList<Integer> l= new ArrayList<Integer>();
        for (int i = 0; i < n; i++) {
            l.add(nextInt());
        }
        int ans = n - 1;
        for (int i = n - 1; i > 0; i--) {
            if (l.get(i) < l.get(i - 1)) {
                break;
            }
            ans--;
        }
        System.out.println(ans);
    }
}
