在做pat乙级1082 射击比赛时 遇到了sort 段错误。

题目链接:https://www.patest.cn/contests/pat-b-practise/1082

感觉写的没啥毛病 但就是段错误 ,搜索了一下才明白,原来是sort函数在极端相等的情况下,比如比较的元素内容完全相同,sort会一直遍历下去直到越界。



我原来的写法是:

int compar(stu s1,stu s2){
return s1.juli-s2.juli;

}

记得以前这样写是没问题,还是我记错了,在java中写没问题?

反正以后记住比较器用bool返回值就好了额。。!!

#include<iostream>

#include<stdio.h>
#include<algorithm>
using namespace std;
#include<vector>
#include<string>
#include<cmath>

struct stu{
string bianhao;
int x;
int y;
int juli;

};
bool compar(stu s1,stu s2){
return s1.juli>s2.juli;

}
int main(){
int k;
scanf("%d",&k);
vector<stu> vec;
for(int i=0;i<k;i++){
stu s ;
cin>>s.bianhao>>s.x>>s.y;
s.juli = s.x*s.x+s.y*s.y;
vec.push_back(s);

}
if(k==0){

return 0;
}
sort(vec.begin(),vec.end(),compar);

cout<<vec[k-1].bianhao<<" "<<vec[0].bianhao;
return 0;
}

c++ 的vector sort遇到栈错误相关推荐

  1. node.js超过php,在nodejs中如何解决超出最大的调用栈错误

    这篇文章主要介绍了nodejs超出最大的调用栈错误问题,需要的朋友可以参考下 今天早上老大和我说之前项目里面的那个数据要改动,要对 mongodb 中每条记录进行 update 操作,你写个脚本跑一下 ...

  2. C++的STL库,vector sort排序时间复杂度 及常见容器比较

    http://www.cnblogs.com/sthv/p/5511921.html http://www.169it.com/article/3215620760.html http://www.c ...

  3. 牛客网_PAT乙级_1020完美数列(25)【vector sort 最后一个测试用例超时】

    题目描述 给定一个正整数数列,和正整数p,设这个数列中的最大值是M,最小值是m,如果M <= m * p,则称这个数列是完美数列. 现在给定参数p和一些正整数,请你从中选择尽可能多的数构成一个完 ...

  4. 7-1 多数组排序 (12 分)三种做法(冒泡排序 ; 重写sort方法 ;利用sort和栈)

    一:题目 3个整数数组进行整体排序,根据输入的三个数组的元素,输出排序后的结果(从大到小) 输入格式: 第1个数组的长度 第1个数组的各个元素 第2个数组的长度 第2个数组的各个元素 第3个数组的长度 ...

  5. ACM练习 愚人节拆括号【vector的清空 栈的使用】

    关于vector的清空 vectorname.clear(); vectorname.clear()函数并不会把所有元素清零,vector有两个参数,一个是size,表示当前vector容器内存储的元 ...

  6. PAT1004 成绩排名【vector sort排序、string的使用】

    读入 n(>0)名学生的姓名.学号.成绩,分别输出成绩最高和成绩最低学生的姓名和学号. 输入格式: 每个测试输入包含 1 个测试用例,格式为 第 1 行:正整数 n 第 2 行:第 1 个学生的 ...

  7. 牛客网_PAT乙级_1022挖掘机技术哪家强(20)【class vector sort排序、删除重复元素】

    题目描述 为了用事实说明挖掘机技术到底哪家强,PAT组织了一场挖掘机技能大赛.现请你根据比赛结果统计出技术最强的那个学校. 输入描述: 输入在第1行给出不超过105的正整数N,即参赛人数.随后N行,每 ...

  8. vector赋值的常见错误

    易范错误1: vector<int> a; for (int i = 0; i<10; i++) a[i] = i; //这种做法以及类似的做法都是错误的.下标只能用于获取已存在的元 ...

  9. POJ-1328(Greedy,Vector,Sort,Iterator)

    1328:Radar Installation 查看 提交 统计 提问 时间限制: 1000ms 内存限制: 65536kB 描述 Assume the coasting is an infinite ...

最新文章

  1. 【转载】中文输入法下onKeyPress不能触发的问题
  2. PWN中的gdb调试, pwndbg,peda,gef 切换使用的方法;
  3. 目标检测Workshop | COCO三连冠带你探索检测新世界
  4. windows下 cl: 命令行 error D8021 :无效的数值参数“/Wno-cpp”的解决办法
  5. Feature Tools:可自动构造机器学习特征的Python库
  6. scapy spider.start_requests
  7. android开发中的ANR异常
  8. Discuz X 3.4 系列漏洞梳理
  9. Jmeter性能测试脚本搭建与测试步骤流程
  10. 图像处理之matlab的取整函数round、ceil、floor和fix
  11. 什么是模式、什么是模式识别、模式识别的方法、过程
  12. 4-7-4 校验ISBN-10编码 (10 分)
  13. 品牌建设—长效且动态的关系管理进程:赫联电子亚太区
  14. 高翔视觉SLAM十四讲(第二版)各种软件、库安装的以及报错解决方法
  15. LL(1)文法构造FIRST、FOLLOW、分析表并分析
  16. 终极WordPress页面构建器:WPBakery
  17. python文档生成_python文档生成工具:pydoc、sphinx;django如何使用sphinx?
  18. 为什么要有不同的参考文献格式?
  19. 【不萌但新】TypeScript入门笔记
  20. ffmpeg CBR精准码流控制三个步骤

热门文章

  1. Keil MDK5.37以上版本自行添加AC5(ARMCC)编译器的方法
  2. Dell R720XD 更换raid1(两块硬盘)故障硬盘
  3. Oracle - Oracle系统服务
  4. 2D_Detection-模型加速(网络篇)
  5. 程序员应知必会的思维模型之 7 邓巴数字 (Dunbar‘s Number)
  6. Dynamics 365 JS调WEB API 报missing privilege ae5c41f0-e823-4cb9-b25a-8ef020201973
  7. FPGA SEU问题与SEM Core
  8. WEB前端网页设计-Bootstrap 按钮下拉菜单
  9. 年轻的战场--(抢了一个大沙发,老衲笑而不语,哈哈。。)
  10. arcsinx,arctanx反函数求导