{-# LANGUAGE BangPatterns, MultiWayIf #-}

import Control.Applicative
import Control.Monad
import Data.List

f !x !y [] = (x, y)
f !x !y ((a, b):cs)
    | a - b >= 0 = f x (y + a - b) cs
    | otherwise  = f (x + b - a) y cs

a `divu` b = (a + b - 1) `div` b

main :: IO ()
main = do
    n <- readLn :: IO Int
    as <- fmap read . words <$> getLine :: IO [Int]
    bs <- fmap read . words <$> getLine :: IO [Int]
    let (aup, bup) = f 0 0 (zip as bs)
    let k = aup - bup
    case (aup `divu` 2, bup) of
        (a, b) | a <= k && b <= k -> putStrLn "Yes"
               | otherwise        -> putStrLn "No"