没啥用的警示后人
  • 板块P1650 田忌赛马
  • 楼主DYYqwq
  • 当前回复1
  • 已保存回复1
  • 发布时间2023/2/11 10:13
  • 上次更新2023/10/24 01:11:06
查看原帖
没啥用的警示后人
719978
DYYqwq楼主2023/2/11 10:13

相信大家的贪心策略都是:

  • 田忌最快的马 VS 国王最快的马
  • 田忌最慢的马 VS 国王最慢的马
  • 实在不行,就用田忌最垃圾的马和国王的最6的马同归于尽

但是,这个判断顺序要注意:

  • 不能先同归于尽, 因为同归于尽 = 输,你会输掉很多钱。

  • 可以先田忌最慢的马 VS 国王最慢的马,因为能赢就行

还有,在使用双指针的时候,要注意初始化:

sort(tian + 1 , tian + n + 1 , cmp);
sort(king + 1 , king + n + 1 , cmp);
// 按照  神速--->垃圾(从大到小)排序
tian_fast = king_fast = 1; // 田忌最6的马 and 国王最6的马都是排完序后第一匹
tian_slow = king_slow = n; // 田忌最垃圾的马 and 国王最垃圾的马都是排完序后的最后一匹

或者是

sort(tian + 1 , tian + n + 1);
sort(king + 1 , king + n + 1);
// 按照  垃圾--->神速(从小到大)排序
tian_fast = king_fast = n; // 田忌最6的马 and 国王最6的马都是排完序后第n匹
tian_slow = king_slow = 1; // 田忌最垃圾的马 and 国王最垃圾的马都是排完序后的第一匹
(没了!)
2023/2/11 10:13
加载中...