zoj 1101 Gamblers(快排+二分)

水题。不过纠结了好久。哎,现在刷水题能力越来越低了。YM。

 

给你N个数,让你求出最大的一个m = a+b+c。这四个数是N个数中各不相同的数。

 

刚才终于知道我思路哪有问题了。我是先用快排,从小到大排序。然后倒着循环。

 

使 s = a[i] + a[j] + a[k]。然后二分查找找s,如果找到,那么输出。

 

一直WA。看别人的,他们找的是,s = a[i] - a[j] - a[k]。找到s后,输出a[i]即可。

 

开始一直不理解。后来想通了。

 


 

我的那种做法,不能保证s是最大值啊!!!!!!因为循环的方式不对。终于理解了。YM。

 

以后不能凭自己想象就去做了。嗯。需要好好证明下自己的想法是否正确。

 


 

心情不好。

 

 


版权声明:本文为zxy_snow原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。