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

    +-字符串

    时间限制:1000 ms  |  内存限制:65535 KB
    难度:1
    描写叙述
    Shiva得到了两个仅仅有加号和减号的字符串,字串长度同样。

    Shiva一次能够把一个加号和它相邻的减号交换。

    他想知道最少须要多少次操作才干把第一个字符串变换成第二个字符串。

    你如今要去帮助他完毕那个这个问题。

    输入
    多组測试数据

    每组数据有两行,每行包括一个由”+”和”-“最成的字符串。每一个子符串长度不超过5000。

    输出
    仅一个整数,输出最少须要操作的次数。假设答案不存在,输出-1。

    例子输入
    ++-+--+ 
    -++--++ 
    例子输出
    4
    AC码:
    #include<stdio.h>
    #include<string.h>
    char ch1[5005],ch2[5005];
    int visit[5005];
    int main()
    {
    	int i,j,count,sum,len;
    	while(~scanf("%s%s",ch1,ch2))
    	{
    		memset(visit,0,sizeof(visit));
    		sum=0;
    		for(i=0;ch2[i]!='';i++)
    		{
    			count=0;
    			for(j=0;ch1[j]!='';j++)
    			{
    				if(!visit[j])
    				{
    					if(ch1[j]!=ch2[i])
    					{
    						count++;
    					}
    					else
    					{
    						visit[j]=1;
    						break;
    					}
    				}
    			}
    			sum+=count;
    		}
    		len=strlen(ch1);
    		for(i=0;i<len;i++)
    		{
    			if(!visit[i])
    			{
    				printf("-1
    ");
    				break;
    			}
    		}
    		if(i>=len)
    			printf("%d
    ",sum);
    	}
    	return 0;
    }


  • 相关阅读:
    凯撒密文的破解编程实现
    微软ping命令的源代码
    从编程到入侵
    永远的后门
    永远的后门
    奇妙的Base64编码
    用端口截听实现隐藏嗅探与攻击(二)
    奇妙的Base64编码
    Liferea 1.1.2
    Equinox Desktop Environment 1.1
  • 原文地址:https://www.cnblogs.com/mqxnongmin/p/10580860.html
Copyright © 2011-2022 走看看