#1097. B围魏救赵(wei.cpp)

B围魏救赵(wei.cpp)

题目背景

共敌不如分敌,敌阳不如敌阴。

题目描述

小明 有 nn 名士兵。小强 有 mm 名士兵。小明 的士兵数量小于 小强 的(n<mn\lt m),为了避免被 小强 打败,小明 决定分配士兵去攻击 小强 的资源点,让 小强 不得不分配士兵去防守资源点。

小强 一共有 kk 个没有保护的资源点,第 ii 个资源点的防守难度为 aia_i,最多容纳 bib_i 名进攻士兵。这意味着 小明 可以投入 0bi0\sim b_i 名士兵来进攻这个资源点。如果 小明 派出了 numnum 名士兵攻击,小强 就需要安排 num×ainum\times a_i 名士兵防守,假设此时 小强 的士兵数量少于 num×ainum\times a_i 那么她有多少士兵就会派出多少士兵。

请问 小明 能否通过分配士兵攻击资源点,逼迫 小强 防守,来让 小强 的剩余士兵数量小于 小明 的剩余士兵数量。

输入格式

第一行为三个整数 n,m,kn,m,k

第二行为 kk 个空格隔开的正整数:a1aka_1\sim a_k

第三行为 kk 个空格隔开的正整数:b1bkb_1\sim b_k

输出格式

如果能让 小强 的剩余士兵数量小于 小明 的剩余士兵数量,输出 “小明 的剩余士兵数量”减去“小强 的剩余士兵数量” 的最大值。

否则输出 No

10 19 3
1 2 3
2 3 5
3

小明 可以给三个资源点分别投入 0 2 50\ 2\ 5 名士兵,这样 小强 就需要 0 4 150\ 4\ 15 名士兵才能防守住。最后 小明 剩余 10025=310-0-2-5=3 名士兵,小强 没有剩余士兵(190415=019-0-4-15=0)。

1 2 1
3
1
No

只有一个资源点,小明 可以投入 11 名士兵,这样 小强 就会把剩下的 22 名士兵都派过去。虽然此时 小明 拿下了这个资源点,但是 小强 的剩余士兵数量并没有少于 小明 的剩余士兵数量(0=00=0)。

10 31 4
5 2 4 3
2 2 2 2 
No

小明 可以给四个资源点各投入 22 名士兵,这样 小强 就需要 10+4+8+6=2810+4+8+6=28 名士兵防守。最后 小明 剩余 102222=210-2-2-2-2=2 名士兵,小强 剩余 3128=331-28=3 名士兵。

10 29 4
5 2 4 3
2 2 2 2 
1

小明 可以给四个资源点各投入 22 名士兵,这样 小强 就需要 10+4+8+6=2810+4+8+6=28 名士兵防守。最后 小明 剩余 102222=210-2-2-2-2=2 名士兵,小强 剩余 2928=129-28=1 名士兵。

10 19 4
5 2 4 3
2 2 2 2 
5

小明 可以给四个资源点分别投入 2 1 2 02\ 1\ 2\ 0 名士兵,这样 小强 就需要 10+2+8+0=2010+2+8+0=20 名士兵防守,所有士兵派过去都不够。最后 小明 剩余 102120=510-2-1-2-0=5 名士兵,小强 剩余 00 名士兵。

数据规模与约定

对于 100%100\% 的数据,1n,m,ai,bi1091 \le n,m,a_i,b_i \le 10^91k1031\le k\le 10^3n<mn\lt m

  • 子任务 1(10 分):保证 ai=1a_i=1
  • 子任务 2(20 分):保证 k=1,a1=mk=1, a_1=m
  • 子任务 3(30 分):保证 bi=nb_i=n
  • 子任务 4(40 分):没有特殊限制。