我是靠谱客的博主 单身流沙,最近开发中收集的这篇文章主要介绍CodeForces-339A-Helpful Maths,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

A. Helpful Maths
time limit per test
2 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output

Xenia the beginner mathematician is a third year student at elementary school. She is now learning the addition operation.

The teacher has written down the sum of multiple numbers. Pupils should calculate the sum. To make the calculation easier, the sum only contains numbers 1, 2 and 3. Still, that isn't enough for Xenia. She is only beginning to count, so she can calculate a sum only if the summands follow in non-decreasing order. For example, she can't calculate sum 1+3+2+1 but she can calculate sums 1+1+2 and 3+3.

You've got the sum that was written on the board. Rearrange the summans and print the sum in such a way that Xenia can calculate the sum.

Input

The first line contains a non-empty string s — the sum Xenia needs to count. String s contains no spaces. It only contains digits and characters "+". Besides, string s is a correct sum of numbers 1, 2 and 3. String s is at most 100 characters long.

Output

Print the new sum that Xenia can count.

Sample test(s)
input
3+2+1
output
1+2+3
input
1+1+3+1+3
output
1+1+1+3+3
input
2
output
2

#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int xlist[50];
char ylist[50];
int i = 0;
while (1){
cin >> xlist[i];
ylist[i] = cin.get();
i++;
if (ylist[i-1] == 'n')
break;
}
sort(xlist,xlist+i);
int temp = i;
for (i = 0; i < temp-1; i++){
cout << xlist[i];
cout << ylist[i];
}
cout << xlist[i];
return 0;
}
改进思路:因为式子中的字符只有'+',所以没有必要针对其专门开一个字符数组进行存储,只需用单一字符变量进行存储与判断即可

技巧:1、字符与数字的轮流读入与轮流输出,在输出时将第一个数字输出后再进入循环,然后根据数字数组个数轮流输出。2、cin的读入注意会跳过tab 空格与回车,需要用到cin.get。3、sort函数对数组进行排序的技巧sort(arrayname,arrayname+排序元素个数)

#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int x[50];
char temp;
int i = 0;
while (1){
cin >> x[i];
i++;
cin.get(temp);
if (temp == 'n')
break;
}
sort(x, x + i);
cout << x[0];
for (int j = 1; j < i; j++){
cout << '+' << x[j];
}
return 0;
}




最后

以上就是单身流沙为你收集整理的CodeForces-339A-Helpful Maths的全部内容,希望文章能够帮你解决CodeForces-339A-Helpful Maths所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(74)

评论列表共有 0 条评论

立即
投稿
返回
顶部