Centipede’s Morning
分类:
greedy
1.题意概述
- 一只蜈蚣有40条左腿和40条右腿。它有a只左鞋和b只右鞋。穿一只左鞋2s,穿一只右鞋1s,扔鞋1s。问给所有脚都穿上鞋最坏需要多长时间?
2.解题思路
- 时间最长就两种情况:
- 拿所有右脚去试左脚,再穿回左脚,这样就是 2b+40 。
- 先给39只右脚穿上鞋,然后再给左脚穿上所有的鞋,然后再把所有的剩下的左鞋去试右脚,然后再穿上右鞋: 39×2+40+2(a−40)+1 。
3.AC代码
int l, r;
while (~scanf("%d%d", &l, &r)) {
if (l > r) printf("%d\n", l * 2 + 39);
else printf("%d\n", r * 2 + 40);
}