华为2018校招技术岗笔试

输入一个整数(含负数),输出3个数据,如下:
1.输出该整数的位数;
2.将该整数各位拆分输出,中间以空格隔开(注意末位不能有空格)。如果是负数,则符号与第一个数一起输出;
3.输出该数的反转数,如为负数,符号位置不变,置于最前。

示例
输入:

-12345

输出:

 
5
-1 2 3 4 5
-54321
 
#include <iostream>
#include <cmath>
#include <algorithm>
#include <set>
#include <cstdio>
#include <string>
#include <cstring>
/*@author:浅滩
*family:
*time:
*/
//我好像是一个在海边玩耍的孩子,
//不时为拾到比通常更光滑的石子或更美丽的贝壳而欢欣鼓舞,
//而展现在我面前的是完全未探明的真理之海
using namespace std;

int main()
{

    string s_num;
    int i;
    getline(cin,s_num);
    if(s_num[0]=='-')//负数
    {
        cout<<s_num.size()-1<<endl;
        cout<<"-"<<s_num[1]<<" ";
        for(i=2;i<s_num.size();i++){
            cout<<s_num[i]<<(i==s_num.size()-1? "\n":" ");
        }
        cout<<"-";
        for(int i=s_num.size()-1;i>=1;i--){
            cout<<s_num[i];
        }


    }
    else{
       cout<<s_num.size()<<endl;
        for(i=0;i<s_num.size();i++){
            cout<<s_num[i]<<(i==s_num.size()-1? "\n":" ");
        }

        for(i=s_num.size()-1;i>=0;i--){
            cout<<s_num[i];
        }


    }



    //cout << "Hello world!" << endl;
    return 0;
}

 

题目:

输入4个IP值组成两个IP段:
第一、二行分别为第一个IP段的起始和结尾IP,第三、四行为第二个IP段的起始和结尾。
要求输出:
若两个IP段有交集则输出"Overlap IP",没有则输出"No Overlap IP"。

示例
输入:

1.1.1.1
255.255.255.255
2.2.2.2
3.3.3.3

输出:

Overlap IP


猜你喜欢

转载自www.cnblogs.com/cstdio1/p/11111120.html