洛谷题解:P12105 [NWRRC2024] Another Brick in the Wall

题目传送门。

题意


给定一堵宽 l l l h h h 的墙面,用 1 × 3 1 \times 3 1×3 尺寸的砖块铺墙面,求出铺的最小数量的砖块。

分析


首先对于墙面宽 l l l 进行分类讨论:

  • l l l 为奇数的情况:由于砖块尺寸是 1 × 3 1 \times 3 1×3,那么不难想到,在墙面的左边或右边铺上 1 × 3 1 \times 3 1×3 的砖块,中间总会剩下若干个 1 × 2 1 \times 2 1×2 的砖块,那么不难想到最小数量就是 h h h

  • l l l 为偶数的情况:只要在墙面的左右两边铺上 1 × 3 1 \times 3 1×3 的砖块,那么这样一共有 ⌊ h 2 ⌋ \lfloor \frac{h} 2 \rfloor 2h 行,所以答案就是 ⌊ h 2 ⌋ × 2 \lfloor \frac{h} 2 \rfloor \times 2 2h×2

分类讨论结束后,根据条件判断并输出即可,代码十分简短。

Code


// P12105 [NWRRC2024] Another Brick in the Wall
#include <cstdio>
using namespace std;
int l, h;
signed main() {
	scanf ("%d%d", &l, &h);
	// 分类讨论,l 为偶数 
	if (l % 2 == 1) printf ("%d", h);
	// l 为奇数 
	else printf ("%d", 2 * (h / 2));
	return 0;
}

AC 记录。

完结撒花。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值