#abc135b. [abc135_b]0 or 1 Swap

[abc135_b]0 or 1 Swap

問題文

{1,2,...,N1,\\ 2,\\ ...,\\ N} を並び替えた数列 pp = {p1,p2,...,pNp_1,\\ p_2,\\ ...,\\ p_N} があります。

あなたは一度だけ、整数  i,j\\ i,\\ j (1leqi<jleqN)\\ (1 \\leq i < j \\leq N) を選んで pi\\ p_i\\pj\\ p_j\\ を入れ替える操作を行うことができます。操作を行わないことも可能です。

pp を昇順にすることができるなら YES を、できないならば NO を出力してください。

制約

  • 入力は全て整数である。
  • 2leqNleq502 \\leq N \\leq 50
  • pp は {1,2,...,N1,\\ 2,\\ ...,\\ N} を並び替えた数列である。

入力

入力は以下の形式で標準入力から与えられる。

NN p1p_1 p2p_2 ...... pNp_N

出力

pp を昇順にすることができるなら YES を、できないならば NO を出力せよ。


入力例 1

5
5 2 3 4 1

出力例 1

YES

p1p_1p5p_5 を入れ替えることで pp を昇順にできます。


入力例 2

5
2 4 3 5 1

出力例 2

NO

この場合、どのような操作を行っても pp を昇順にすることはできません。


入力例 3

7
1 2 3 4 5 6 7

出力例 3

YES

pp が最初から昇順なので、操作を行う必要はありません。