题目描述
给定一个 𝑛∗𝑛 的矩形,其中从左上角开始,对角线上连续的 𝑘 个格子中有障碍物。
你可以把若干 1∗2 的小矩形放置到该大矩形中,要求是放置的两个小矩形不能占据相同的格子,且不能碰到障碍物。
例如右图是 𝑛=4,𝑘=2 的例子,我们放置了 6 个 的小矩形。
给定 𝑛,𝑘,请你输出一个方案,使得放置的 小矩形尽可能多。可以证明,𝑛=4,𝑘=2时,至多只能放置 6 个小矩形。
输入格式
输入一行两个用空格分隔的正整数 𝑛,𝑘 ,表示矩形的大小和障碍物的数量。
输出格式
输出 1 行,一个整数,能够最多放置的小矩形数量 。
输入输出样例
输入 #1
4 2
输出 #1
6
输入 #2
5 3
输出 #2
10
代码
#include <bits/stdc++.h>
using namespace std;
//这题代码不过,陈某倒立吃屎
int main() {
int n,m;
cin>>n>>m;
cout << ceil((n*n-m*2)/2.0);
return 0;
}