版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_42449444/article/details/88616610
本题要求将输入的任意3个整数从小到大输出。
输入在一行中给出3个整数,其间以空格分隔。
在一行中将3个整数从小到大输出,其间以“->”相连。
4 2 8
2->4->8
第一次做这道水题是在HBUOJ,我当时用的Python,俩行AC!第一行读入一个int型的list,第二行是将list升序排列后添加到一个以"->"为分隔符的字符串中。现在用Cpp写吧,题目说的是输入3个数,我不想int a[3];来写,我是用while语句来读取若干个数,每个数都被推入vector中,然后对vector进行升序排列,最后无脑for-each输出即可。
a = map(int,input().split())
print("->".join(str(i) for i in sorted(a)))
#include <bits/stdc++.h>
using namespace std;
int main()
{
int temp;
vector<int> v;
while(cin >> temp) //将输入的数都推入vector中
{
v.push_back(temp);
}
sort(v.begin(),v.end()); //升序排列
bool isVirgin = true; //判断是不是第一次
for(auto it : v)
{
if(isVirgin)
{
cout << it;
isVirgin = false;
}
else
{
cout << "->" << it;
}
}
return 0;
}