import std.stdio;
import std.conv;
import std.string;
import std.typecons;
import std.algorithm;
import std.array;
import std.range;
import std.math;
import std.regex : regex;
import std.container;
import std.bigint;
import std.numeric;


void main()
{
  auto n = readln.chomp.to!int;
  auto a = readln.chomp.split.to!(int[]);
  auto b = readln.chomp.split.to!(int[]);
  int[int] a_cnt, b_cnt;
  foreach (i; 0..n) {
    a_cnt[a[i]]++;
    b_cnt[b[i]]++;
  }
  auto a_keys = a_cnt.keys;
  auto b_keys = b_cnt.keys;
  a_keys.sort();
  b_keys.sort();
  int ap;
  bool f;
  a:foreach (k; b_keys) {
    while (b_cnt[k]) {
      auto la = a_keys[ap];
      if (a_cnt[la]) {
        if (la > k) {
          f = true;
          break a;
        }
        auto tmp = min(a_cnt[la], b_cnt[k]);
        a_cnt[la] -= tmp;
        b_cnt[k] -= tmp;
      } else {
        ap++;
      }
    }
  }

  if (f) {
    writeln("No");
  } else {
    writeln("Yes");
  }
}
