import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] p = new int[n + 1];
        String res = "YES";
        for(int i = 1; i <= n; i++) p[i] = sc.nextInt();
        for(int i = 1; i <= n; i++) {
            if(i != p[i] && p[p[i]] == i) {
                p[p[i]] = p[i];
                p[i] = i;
                break;
            }
        }
        for(int i = 1; i < n; i++) if(p[i] > p[i + 1]) res = "NO";
        System.out.println(res);
    }
} import java.util.Scanner; Scanner java.util public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] p = new int[n + 1];
        String res = "YES";
        for(int i = 1; i <= n; i++) p[i] = sc.nextInt();
        for(int i = 1; i <= n; i++) {
            if(i != p[i] && p[p[i]] == i) {
                p[p[i]] = p[i];
                p[i] = i;
                break;
            }
        }
        for(int i = 1; i < n; i++) if(p[i] > p[i + 1]) res = "NO";
        System.out.println(res);
    }
} Main public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] p = new int[n + 1];
        String res = "YES";
        for(int i = 1; i <= n; i++) p[i] = sc.nextInt();
        for(int i = 1; i <= n; i++) {
            if(i != p[i] && p[p[i]] == i) {
                p[p[i]] = p[i];
                p[i] = i;
                break;
            }
        }
        for(int i = 1; i < n; i++) if(p[i] > p[i + 1]) res = "NO";
        System.out.println(res);
    } main {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] p = new int[n + 1];
        String res = "YES";
        for(int i = 1; i <= n; i++) p[i] = sc.nextInt();
        for(int i = 1; i <= n; i++) {
            if(i != p[i] && p[p[i]] == i) {
                p[p[i]] = p[i];
                p[i] = i;
                break;
            }
        }
        for(int i = 1; i < n; i++) if(p[i] > p[i + 1]) res = "NO";
        System.out.println(res);
    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int n = sc.nextInt(); n sc.nextInt() sc.nextInt sc int[] p = new int[n + 1]; p new int[n + 1] n + 1 n 1 String res = "YES"; res "YES" for(int i = 1; i <= n; i++) p[i] = sc.nextInt(); int i = 1; int i = 1; i 1 i <= n i n i++ i++ i p[i] = sc.nextInt(); p[i] = sc.nextInt() p[i] p i sc.nextInt() sc.nextInt sc for(int i = 1; i <= n; i++) {
            if(i != p[i] && p[p[i]] == i) {
                p[p[i]] = p[i];
                p[i] = i;
                break;
            }
        } int i = 1; int i = 1; i 1 i <= n i n i++ i++ i {
            if(i != p[i] && p[p[i]] == i) {
                p[p[i]] = p[i];
                p[i] = i;
                break;
            }
        } {
            if(i != p[i] && p[p[i]] == i) {
                p[p[i]] = p[i];
                p[i] = i;
                break;
            }
        } if(i != p[i] && p[p[i]] == i) {
                p[p[i]] = p[i];
                p[i] = i;
                break;
            } i != p[i] && p[p[i]] == i i != p[i] i p[i] p i p[p[i]] == i p[p[i]] p p[i] p i i {
                p[p[i]] = p[i];
                p[i] = i;
                break;
            } p[p[i]] = p[i] p[p[i]] p p[i] p i p[i] p i p[i] = i p[i] p i i break; for(int i = 1; i < n; i++) if(p[i] > p[i + 1]) res = "NO"; int i = 1; int i = 1; i 1 i < n i n i++ i++ i if(p[i] > p[i + 1]) res = "NO"; if(p[i] > p[i + 1]) res = "NO"; p[i] > p[i + 1] p[i] p i p[i + 1] p i + 1 i 1 res = "NO" res "NO" System.out.println(res) System.out.println System.out System System.out res String[] args args public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] p = new int[n + 1];
        String res = "YES";
        for(int i = 1; i <= n; i++) p[i] = sc.nextInt();
        for(int i = 1; i <= n; i++) {
            if(i != p[i] && p[p[i]] == i) {
                p[p[i]] = p[i];
                p[i] = i;
                break;
            }
        }
        for(int i = 1; i < n; i++) if(p[i] > p[i + 1]) res = "NO";
        System.out.println(res);
    }
} public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] p = new int[n + 1];
        String res = "YES";
        for(int i = 1; i <= n; i++) p[i] = sc.nextInt();
        for(int i = 1; i <= n; i++) {
            if(i != p[i] && p[p[i]] == i) {
                p[p[i]] = p[i];
                p[i] = i;
                break;
            }
        }
        for(int i = 1; i < n; i++) if(p[i] > p[i + 1]) res = "NO";
        System.out.println(res);
    }
} Main
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] p = new int[n + 1];
        String res = "YES";
        for(int i = 1; i <= n; i++) p[i] = sc.nextInt();
        for(int i = 1; i <= n; i++) {
            if(i != p[i] && p[p[i]] == i) {
                p[p[i]] = p[i];
                p[i] = i;
                break;
            }
        }
        for(int i = 1; i < n; i++) if(p[i] > p[i + 1]) res = "NO";
        System.out.println(res);
    }
}
