[信息与未来 2019] 方格覆盖

题目描述

给定一个 𝑛∗𝑛 的矩形,其中从左上角开始,对角线上连续的 𝑘 个格子中有障碍物。

你可以把若干 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;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值