#define _USE_MATH_DEFINES	//M_PI(π),M_SQRT2(√2)
#include <iostream>			//std::cout, std::cin
#include <string>			//std::string,std::to_string(C++11)
#include <vector>			//std::vector
#include <valarray>			//std::valarray
#include <algorithm>		//std::sort
#include <time.h>			//localtime_s
#include <cstdlib>			//abs
#include <cmath>			//abs,std::pow,sqrt,sin,cos,round,floor,ceil
#include <fstream>			//std::ifstream,std::ofstream
#include <iomanip>			//std::setprecision,std::setw,std::setfill
#include <random>			//std::random(C++11)
#include <numeric>			//std::accumulate

int main(void) {

	//test用
	//std::ifstream in("test.txt");
	//std::cin.rdbuf(in.rdbuf());

	//const unsigned int MODULO = 1000000007;	//MODULO 10^9+7用

	int N;
	std::cin >> N;
	std::vector<int> a(N), b(N), X(100);
	for (int i = 0; i < N; i++) {
		std::cin >> a[i];
	}
	for (int i = 0; i < N; i++) {
		std::cin >> b[i];
	}

	int K = 0;
	for (int i = 0; i < N; i++) {
		if (b[i] == 0) {
			K += a[i];
		}
		else {
			X[b[i] - 1] += a[i];
		}
	}

	if (K >= *std::max_element(X.begin(),X.end())) {
		std::cout << "YES" << std::endl;
	}
	else {
		std::cout << "NO" << std::endl;
	}

}