zoukankan      html  css  js  c++  java
  • CodeForces

    You are given three integers aa, bb and xx. Your task is to construct a binary string ssof length n=a+bn=a+b such that there are exactly aa zeroes, exactly bb ones and exactly xx indices ii (where 1≤i<n1≤i<n) such that si≠si+1si≠si+1. It is guaranteed that the answer always exists.

    For example, for the string "01010" there are four indices ii such that 1≤i<n1≤i<n and si≠si+1si≠si+1 (i=1,2,3,4i=1,2,3,4). For the string "111001" there are two such indices ii (i=3,5i=3,5).

    Recall that binary string is a non-empty sequence of characters where each character is either 0 or 1.

    Input

    The first line of the input contains three integers aa, bb and xx (1≤a,b≤100,1≤x<a+b)1≤a,b≤100,1≤x<a+b).

    Output

    Print only one string ss, where ss is any binary string satisfying conditions described above. It is guaranteed that the answer always exists.

    Examples

    Input

    2 2 1
    

    Output

    1100
    

    Input

    3 3 3
    

    Output

    101100
    

    Input

    5 3 6
    

    Output

    01010100

    题解:

    根据0和1谁的数量大,确定从谁开始,然后n为奇数和偶数再分别判断即可

    代码:

    #include<iostream>
    #include<algorithm>
    #include<cstdio>
    #include<cstring>
     
    using namespace std;
    
    int main()
    {
        int a,b,x,s;
        int m,n;
        cin>>a>>b>>x;
        s=a+b;
        if(a>b) 
    	{
    	m=0;
    	n=1;
        }
        else
    	{
    	 m=1;
    	 n=0;
    	 swap(a,b);
    	 }
        for(int i=0;i<x/2;i++) {cout<<m<<n;a--,b--;}
        if(x%2==0){
            while(b--) cout<<n;
            while(a--) cout<<m;
        }
        else{
            while(a--) cout<<m;
            while(b--) cout<<n;
        }
        return 0;
    }
    
  • 相关阅读:
    一些概念理解(持续更新)
    python练习题
    linux常用命令
    数据库索引的一点学习(待更新)
    sql注入的一点学习(待更新)
    python 选择排序的实现
    python 冒泡排序的实现
    1--初始配置
    0--HttpUrlConnection 基础知识
    1--HTTP基础知识
  • 原文地址:https://www.cnblogs.com/Staceyacm/p/10781912.html
Copyright © 2011-2022 走看看