URAL 1876 Centipede's Morning

Description

A centipede has 40 left feet and 40 right feet. It keeps a left slippers and b right slippers under its bed. Every morning the centipede puts on the slippers. It pokes its first left foot under the bed and puts on a random slipper, doing it in one second. If the slipper is left, the centipede passes to shoeing the second left foot. Otherwise, it takes off the slipper and puts it on any unshod right foot, spending one more second, so that it takes two seconds altogether to put on such a slipper. If there are no unshod right feet, the centipede throws the slipper to a corner of the room, also in one second, so that two seconds are spent altogether for this slipper. The process is continued until all the left feet are in left slippers. Then the centipede starts shoeing its right feet until all of them are shod.
Today the centipede has got out of bed on the wrong side, so it is preparing for the worst. How many seconds will it need for shoeing?

Input

The only line contains the integers a and b (40 ≤ a, b ≤ 100).

Output

Output the number of seconds the centipede will need for shoeing in the worst case.

Sample Input

inputoutput
40 40
120

解析

这道题题目有点不好理解,需要推公式,中文题目:www.nocow.cn/index.php/Translate:URAL/1876

左脚穿一下1s 右脚穿一下1s 扔鞋子1s

如果左脚穿满了,就直接穿右脚。

有两种最坏情况
1.先拿到的都是右脚2*b,再拿到左脚穿好40  总时间=2b+40

2.先给右脚穿39只鞋39*2,再把左脚穿好40。再给右脚最后一只脚穿,把剩下的左脚鞋子都上一遍,耗时2*(a-40)  总时间=39*2+40+2*(a-40)

#include<cstdio>
#include<algorithm>
using namespace std;
int main()
{
	int l,r;
	scanf("%d%d",&l,&r);

	int s1=39+2*l;
	int s2=2*r+40;
	printf("%d",max(s1,s2));

	return 0;
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值