田忌赛马
原来做过 但当时思路很混乱 今天看到一个思路清晰的贪心 记录一下
把双方的马从大到小排序 然后从前往后比较 老田赢了呢 就继续往下比 老田比不过呢 就拉老田最慢的马跟这个比 这里好理解
还有比平的情况 比平了还是从后面找一匹马
找的时候 要是老田后面的马可以赢对应位置的马 就接着往前比 然后找到的那匹就跟前面这匹马比
核心代码:
for(i=0;i<n;i++)
{
if(t[head]>k[i])
{
head++;
ans+=200;
}
else if(t[head]<k[i])
{
tailt--;
ans-=200;
}
else if(t[head]==k[i])
{
for(j=tailt,m=tailk;j>=head;j--,m--)
{
if(t[j]>k[m])
{
ans+=200;
tailt--;
tailk--;
}
else
{
if(t[j]<k[i]) ans-=200;
tailt=--j;
tailk=m;
break;
}
}
}
if(head>tailt) break;
}