链接:http://pre.ac.nowcoder.com/acm/contest/1869/P
来源:牛客网

题目描述

小乐乐喜欢数字,尤其喜欢0和1。他现在得到了一个数,想把每位的数变成0或1。如果某一位是奇数,就把它变成1,如果是偶数,那么就把它变成0。请你回答他最后得到的数是多少。
输入描述:

输入包含一个整数n (0 ≤ n ≤ 10^9)

输出描述:

输出一个整数,即小乐乐修改后得到的数字。

#include<iostream>
#include<cstring>
using namespace std;
int main()
{
    char a[10] = {};
    cin >> a;
    int n = strlen(a);
    for (int i = 0; i < n; i++)
    {
        if (a[i] % 2 == 0)
            a[i] = '0';
        else a[i] = '1';
    }
    int sign = -1;            //做标记,因为可能出现0开头的情况,如:000101输出为101
    for (int i = 0; i < n; i++)
        if (a[i] != '0')
        {
            sign = i;     //标记第一个非零数字位置,以便接下来输出它及其后面的数字
            break;
        }
    if (sign == -1)            //输出一个零,或者非零后的所有数字
        cout << '0' << endl;
    else
        for (; sign < n; sign++)
            cout << a[sign];
    cout << endl;
}