zoukankan      html  css  js  c++  java
  • +-字符串

    +-字符串

    时间限制:1000 ms | 内存限制:65535 KB

    难度:1

    描述 Shiva得到了两个只有加号和减号的字符串,字串长度相同。Shiva一次可以把一个加号和它相邻的减号交换。他想知道最少需要多少次操作才能把第一个字符串变换成第二个字符串。你现在要去帮助他完成那个这个问题。
    输入多组测试数据

    每组数据有两行,每行包含一个由”+”和”-“最成的字符串。每个子符串长度不超过5000。输出仅一个整数,输出最少需要操作的次数。如果答案不存在,输出-1。样例输入++-+–+
    -++–++
    样例输出
    4
    my answer:

    #include<iostream>
    #include<string>
    using namespace std;
    int main()
    {
        char a[6000];
        char b[6000];
        while(cin>>a)
        {
            cin>>b;
            int str=strlen(a);
            int count=0;
            for(int i=0;i!=str;i++){
                if(a[i]!=b[i]){
                    for(int k=i+1;k!=str;k++){
                        if(b[k]==a[i]){
                          count+= (k-i);
                          if(b[k]=='-')b[k]='+';
                          else  b[k]='-';
                          break;
                       }
                    }
                }
            }
            cout<<count<<endl;
        }
        return 0;
    }
  • 相关阅读:
    使用json-lib进行Java和JSON之间的转换
    ajax+json+java
    了解Json
    Ehcache RIM
    利用FreeMarker静态化网页
    Timer和TimerTask
    windows下memcache安装
    mac下安装YII
    php static 和self区别
    YII behaviors使用
  • 原文地址:https://www.cnblogs.com/NYNU-ACM/p/4236903.html
Copyright © 2011-2022 走看看