思路:枚举湖的个数,然后贪心选择鱼最多的湖。
在枚举湖的个数时,先把湖之间“奔走”的时间单独算出来,用总的时间减去“奔走”的时间,就是纯粹钓鱼的时间。然后再算出总的钓鱼的次数,对每次钓鱼选择鱼最多的那个湖钓,这样算出来的就是钓的最多的鱼的方案。
注意一些细节:
1、题中要求的是当湖中鱼的个数相等时,就在湖的编号小的湖中钓。
2、当全部的湖中,鱼都钓完了,就在第一个湖中钓。
下面是源代码:
说说我做这个题时的困惑:首先思路我是明白的,但是细节我没有设计好,在找鱼最多的湖时,我用了库函数的排序函数,对以湖中鱼的个数对湖进行排序,但是这个函数是个稳定的排序,当两个湖中鱼的数量相等时,湖的编号小的排不到前面,导致WA了很久。后来就放弃了这种做法,直接找最大值,这样用这种方法的特性,反而避免了这种问题,很快就对了,看了不能总是省懒劲儿啊,关键是思路要正确!