P9585 题解

题目传送门

思路

这题我们分情况考虑:

  1. n×2mn\times2\le m 时,我们只要间隔着放人就可以了,产生 00 愤怒值;
  2. mm 为奇数时,先间隔着放 m2\lceil\frac m2\rceil 个人,产生 22 愤怒值,剩下的人放间隔里,每放一个人就会增加 44 愤怒值,总共会产生 2+4×(nm2)2+4\times(n-\lceil\frac m2\rceil) 的愤怒值,简化一下就是 n×4m×2n\times4-m\times2
  3. mm 为偶数时,先间隔着放 m2\frac m2 个人,产生 00 愤怒值,剩下的人放间隔里,每放一个人就会增加 44 愤怒值,总共会产生 2+4×(nm2)2+4\times(n-\frac m2) 的愤怒值,简化一下也是 n×4m×2n\times4-m\times2

代码

# include <bits/stdc++.h>
using namespace std;
int n, m;
int main () {
	cin >> n >> m;
	cout << max (4 * n - 2 * m, 0);
	return 0;
}
posted @ 2023-08-27 18:24  Vitamin_B  阅读(10)  评论(0)    收藏  举报  来源