使用vector的一些小问题

7-6 按顺序输出

分数 15

全屏浏览

切换布局

作者 fpc

单位 内蒙古师范大学

本题目要求读入3个整数a,b,c,然后按从小到大的顺序输出。

输入格式:

输入在一行中给出2个绝对值不超过1000的整数a,b,c。

输出格式:

对每一组输入,按照从小到大的顺序在一行内输出两个数,中间用"<"分割(行尾无需换行)。

输入样例:

复制代码
5 3 4

输出样例:

复制代码
3<4<5

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

背景:

今天的作业,想用vector然后sort一下。代码如下。但是运行结果就是"0<0<0"

代码:

#include<bits/stdc++.h>

using namespace std;

int main(){

vector<int>a(4);//

for(int i=0;i<3;i++){

int b;

cin>>b;

a.push_back(b);//

}

sort(a.begin(),a.end());

for(int i=0;i<3;i++){

cout<<ai;

if(i!=2)cout<<'<';

}

return 0;

}

查了一下gpt确实是有问题:在初始化 vector<int> a(4); 时,会创建一个包含4个元素的 vector,但在后续的循环中又通过 push_back 方法往 vector 中添加元素,导致实际存储的元素个数为7。这可能会导致输出结果不符合预期,因为排序和输出时会考虑所有7个元素。

修改:

1.把sort的a.end()改为a.begin()+3;

2.不用push_back(),用ai读入,并将定义改为vector<int> a(3);

相关推荐
wabs6666 小时前
关于贪心算法的思考
算法·贪心算法
社交怪人6 小时前
【判断大小】信息学奥赛一本通C语言解法(题号1043)
算法
Snasph7 小时前
GNU Make 用户手册(中文版)
服务器·算法·gnu
江澎涌7 小时前
拆解与 AI 的一次对话
人工智能·算法·程序员
sheeta19987 小时前
LeetCode 每日一题笔记 日期:2026.06.02 题目:3635. 最早完成陆地和水上游乐设施的时间 II
笔记·算法·leetcode
Lsk_Smion8 小时前
力扣实训 _ [102].层序遍历--前序--后续_递归与非递归的实现
数据结构·算法·leetcode
小欣加油9 小时前
leetcode3751 范围内总波动值I
java·数据结构·c++·算法·leetcode
Halo_tjn10 小时前
反射与设计模式1
java·开发语言·算法
V搜xhliang024611 小时前
临床科研新范式:从选题到投稿,AI智能体如何接管全流程?
运维·数据结构·人工智能·算法·microsoft·数据挖掘·自动化
计算机安禾12 小时前
【算法分析与设计】第46篇:近似难度与不可近似性理论
网络协议·算法·ssl