AT_abc474_d [ABC474D] Outweigh

题目描述

给定长度为 $N$ 的序列 $A=(A_1,A_2,\cdots,A_N),B=(B_1,B_2,\cdots,B_N)$。 判断是否存在一个长度为 $N$ 的正整数序列 $W=(W_1,W_2,\cdots,W_N)$ 满足下面所有条件,若有则构造一个: + $1 \le W_i \le 10^{18}$ + $\displaystyle \sum_{i=1}^{n} A_iW_i > \sum_{i=1}^{n} B_iW_i$

输入格式

第一行一个整数 $N$。 第二行 $N$ 个整数 $A_1,A_2,\cdots,A_n$。 第三行 $N$ 个整数 $B_1,B_2,\cdots,B_n$。

输出格式

如果存在一个符合要求的序列 $W=(W_1,W_2,\cdots,W_N)$,则在第一行输出一个字符串 $\texttt{Yes}$,第二行输出 $N$ 个整数 $W_1,W_2,\cdots,W_N$。 否则输出一行一个字符串 $\texttt{No}$。

说明/提示

### 样例 1 解释 若 $W=(4,7,4)$,则 $\displaystyle \sum_{i=1}^{n} A_iW_i=4 \times 4 + 7 \times 7 + 4 \times 4=81$,$\displaystyle \sum_{i=1}^{n} B_iW_i=4 \times 5 + 7 \times 5 + 4 \times 5=75$。 ### 数据范围 - $ 1 \leq N \leq 10^5 $ - $ 1 \leq A_i \leq 10^9 $ - $ 1 \leq B_i \leq 10^9 $