• Ternary XOR



    #include<iostream>
    #include<cmath>
    using namespace std;
    int num,i,ii;
    int main(){
        int a,is=-5;
        char arr[50005];
        cin>>num;
        for(int j=0;j<num;j++){
            cin>>a>>arr;//将三进制数作为字符串
            cout<<1;
            for(i=0;i<a-1;i++){//第一次输出
                if(arr[i+1]!='1' && is<0){//一直都不是1的时候输出是确定的
                    cout<<((arr[i+1]=='0')?'0':'1');
                }else if(arr[i+1]=='1' && is<0){//第一次出现1,记录位置,输出1,
                    is=i;
                    cout<<1;
                }else{//发现1后,此后全部输出0
                    cout<<0;
                }
            }
            cout<<endl<<1;
            for(i=0;i<a-1;i++){//第二次输出
                if(is<0 || i<is)//如果没有1或没到,则按固定输出
                    cout<<((arr[i+1]=='0')?'0':'1');
                else if(i==is)//如果到1了,输出0
                    cout<<0;
                else
                    cout<<arr[i+1];//1后的全部安照原样输出
            }cout<<endl;
            is=-5;
        }
        return 0;   
    }
  • 相关阅读:
    第5次作业
    第六次作业
    第五次作业
    软件需求最佳实践阅读笔记05
    软件需求最佳实践阅读笔记04
    构建民航知识图谱
    软件需求最佳实践阅读笔记03
    软件需求最佳实践阅读笔记02
    软件需求最佳实践阅读笔记01
    程序员的自我修养阅读笔记03
  • 原文地址:https://www.cnblogs.com/forwhat00/p/12587053.html
Copyright © 2020-2023  润新知