atcoder#KEYENCE2019C. Exam and Wizard

Exam and Wizard

题目描述

大学生の高橋君は N N 個の試験を受けてすべてに合格する必要があります. 現在,i i 番目の試験の準備度は Ai A_{i} です. また,高橋君の入念な調査によって,i i 番目の試験に合格するためには準備度を Bi B_{i} 以上にしなくてはならないことが分かっています.

このままだとすべての試験に合格できないかもしれないと思った高橋君は,魔法使いの青木君に頼んで, 試験の準備度の総和は変えずに,なるべく少ない数の試験の準備度を変更してもらうことで試験を乗り切ることにしました.

高橋君に代わって,以下の条件を満たす数列 C1, C2, ..., CN C_1,\ C_2,\ ...,\ C_{N} を考えたときの Ai A_i Ci C_i が異なるような i i の個数の最小値を求めてください. そのような数列 C1, C2, ..., CN C_1,\ C_2,\ ...,\ C_{N} が構成できない場合は 1 -1 を出力してください.

  • 数列 A1, A2, ..., AN A_1,\ A_2,\ ...,\ A_{N} の総和と数列 C1, C2, ..., CN C_1,\ C_2,\ ...,\ C_{N} の総和は等しい
  • どの i i に対しても,Bi  Ci B_i\ \leq\ C_i が成り立つ

输入格式

入力は以下の形式で標準入力から与えられる.

N N A1 A_1 A2 A_2 ... ... AN A_{N} B1 B_1 B2 B_2 ... ... BN B_{N}

输出格式

条件を満たす数列 C1, C2, ..., CN C_1,\ C_2,\ ...,\ C_{N} を考えたときの Ai A_i Ci C_i が異なるような i i の個数の最小値を出力せよ. 数列 C1, C2, ..., CN C_1,\ C_2,\ ...,\ C_{N} が構成できない場合は,1 -1 を出力せよ.

题目大意

给你两个数组 AABB,每一个数组有 NN 个元素,要求你改变 AA 数组的某一些元素(可能为 00),让 AA 数组满足两个条件:

  • 和改变前的数组总和不变

  • AA 数组里每一个元素都不能比 BB 数组的对应元素小,即 AiBiA_{i} \leq B_{i}

要求改变的元素最少,问最少改变多少个元素?如果无法满足要求输出-1

3
2 3 5
3 4 1
3
3
2 3 3
2 2 1
0
3
17 7 1
25 6 14
-1
12
757232153 372327760 440075441 195848680 354974235 458054863 463477172 740174259 615762794 632963102 529866931 64991604
74164189 98239366 465611891 362739947 147060907 118867039 63189252 78303147 501410831 110823640 122948912 572905212
5

提示

制約

  • 1  N  105 1\ \leq\ N\ \leq\ 10^5
  • 1  Ai  109 1\ \leq\ A_i\ \leq\ 10^9
  • 1  Bi  109 1\ \leq\ B_i\ \leq\ 10^9
  • Ai, Bi A_i,\ B_i は整数

Sample Explanation 1

(A1, A2, A3) = (2, 3, 5) (A_1,\ A_2,\ A_3)\ =\ (2,\ 3,\ 5) (B1, B2, B3) = (3, 4, 1) (B_1,\ B_2,\ B_3)\ =\ (3,\ 4,\ 1) であり,このままでは 1 1 番目と 2 2 番目の試験に合格できません. 以下のように C1, C2, C3 C_1,\ C_2,\ C_3 を構成すれば,Ai A_i Ci C_i が異なるような i i の個数の最小値 3 3 を達成できます. - (C1, C2, C3) = (3, 5, 2) (C_1,\ C_2,\ C_3)\ =\ (3,\ 5,\ 2)

Sample Explanation 2

この場合は,何もしなくても全ての試験に合格できます.

Sample Explanation 3

この場合は,どのようにしても全ての試験に合格することはできません.