前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >找最小数 (vector的练习)

找最小数 (vector的练习)

作者头像
喜欢ctrl的cxk
发布2019-11-08 17:05:08
4400
发布2019-11-08 17:05:08
举报
文章被收录于专栏:Don的成长史

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

本文链接:https://blog.csdn.net/weixin_42449444/article/details/85332079

题目描述:

第一行输入一个数n,1 <= n <= 1000,下面输入n行数据,每一行有两个数,分别是x y。输出一组x y,该组数据是所有数据中x最小,且在x相等的情况下y最小的。

输入描述:

代码语言:javascript
复制
输入有多组数据。
每组输入n,然后输入n个整数对。

输出描述:

代码语言:javascript
复制
输出最小的整数对。

输入样例:

代码语言:javascript
复制
5  
3 3  
2 2  
5 5  
2 1  
3 6

输出样例:

代码语言:javascript
复制
2 1

解题思路:

先把所有的x,y都推入vector中,然后按照x升序,x相等时y升序的方法排序,输出第一对x,y即可。

AC代码:

代码语言:javascript
复制
#include <bits/stdc++.h>
using namespace std;

struct node
{
    int x,y;
};

bool Cmp(node a,node b)
{
    //按照x升序排列,若x相等,则按照y升序排列
    return a.x!=b.x ? a.x<b.x : a.y<b.y;
}

int main()
{
    int n;
    cin >> n;
    vector<node> v;
    for(int i = 0; i < n; i++)
    {
        int x, y;
        cin >> x >> y;
        v.push_back({x,y});
    }
    sort(v.begin(),v.end(),Cmp);
    cout << v[0].x << " " << v[0].y << endl;
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018/12/28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 题目描述:
  • 输入描述:
  • 输出描述:
  • 输入样例:
  • 输出样例:
    • 解题思路:
      • AC代码:
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档