zoukankan      html  css  js  c++  java
  • CodeForces

    String can be called correct if it consists of characters "0" and "1" and there are no redundant leading zeroes. Here are some examples: "0", "10", "1001".

    You are given a correct string s.

    You can perform two different operations on this string:

    1. swap any pair of adjacent characters (for example, "101"  "110");
    2. replace "11" with "1" (for example, "110"  "10").

    Let val(s) be such a number that s is its binary representation.

    Correct string a is less than some other correct string b iff val(a) < val(b).

    Your task is to find the minimum correct string that you can obtain from the given one using the operations described above. You can use these operations any number of times in any order (or even use no operations at all).

    Input

    The first line contains integer number n (1 ≤ n ≤ 100) — the length of string s.

    The second line contains the string s consisting of characters "0" and "1". It is guaranteed that the string s is correct.

    Output

    Print one string — the minimum correct string that you can obtain from the given one.

    Examples

    Input
    4
    1001
    Output
    100
    Input
    1
    1
    Output
    1

    Note

    In the first example you can obtain the answer by the following sequence of operations: "1001"  "1010"  "1100"  "100".

    In the second example you can't obtain smaller answer no matter what operations you use.

    记得0哦

    #include<stdio.h>
    #include<string.h>
    #include<iostream>
    using namespace std;
    #define LL long long int
    const int N = 1e5 + 7;
    const int MOD = 1e9+7;
    int main()
    {
       int sum =0;
       int n;
       string c;
       cin>>n;
       cin>>c;
       if(c[0]=='0')
        cout<<"0"<<endl;
       else
       {
    
        for(int i=0;i<n;i++){
        if(c[i]=='0')
            sum++;
       }
           cout<<"1";
           while(sum--)
            cout<<"0";
           cout<<endl;
       }
        return 0;
    }
    

      

  • 相关阅读:
    MySQL 数据类型
    MySQL的相关概念介绍
    遍历Map的四种方法
    Hadoop在win7下部署的问题
    Hbase之shell操作
    问题-"Record not found or changed by another user"
    问题-Delphi编译到最后Linking时总是出现与ntdll.dll有关的错误还有Fatal Error Out of memory错误
    教程-CXGRID之cxDropDownEdit密密
    问题-delphi在某电脑(win7)上是界面超乱 DPL
    教程-Delphi调用C# WEBSERVICE(二)
  • 原文地址:https://www.cnblogs.com/upstart/p/8982244.html
Copyright © 2011-2022 走看看