CF390B Inna, Dima and Song Solution
题目传送门
思路:
- 如果
b_i \le 1 则无解。 - 如果
ceil((double)b[i]/2)>a[i],即最好情况下,两个人的音量平均,但是较大的音量还是大于a_i 。那么也是无解的。 - 否则,要使他们的乘积最大,两个数就要尽量接近。先除以
2 ,然后一个向上取整,一个向下取整即可。
特别地,因为
核心代码:
for(int i=1;i<=n;i++)
{
if(ceil((double)b[i]/2)>a[i]||b[i]<=1)ans--;
else ans+=ceil((double)b[i]/2)*floor((double)b[i]/2);
}