using System;
using System.Linq;
using System.Collections.Generic;

class No216{
    static void Main(){
        var c=Int32.Parse(Console.ReadLine());
        var a=Console.ReadLine().Split(' ').Select(x=>Int32.Parse(x)).ToArray();
        var b=Console.ReadLine().Split(' ').Select(x=>Int32.Parse(x)).ToArray();
        var dic=new Dictionary<int,int>();
        for(int i=0;i<c;++i){
            if(dic.ContainsKey(b[i])){
             int j=-1;
             dic.TryGetValue(b[i],out j);
             j+=a[i];
             dic[b[i]]=j;
            }
            else{
            dic.Add(b[i],a[i]);
            }
        }
        int k=0;
        dic.TryGetValue(0,out k);
        var s="YES";
        foreach(var value in dic.Values){
            if(value>k)s="NO";
        }
        Console.WriteLine(s);
    }
}