+-字符串
时间限制:1000 ms | 内存限制:65535 KB
难度:1
描述 Shiva得到了两个只有加号和减号的字符串,字串长度相同。Shiva一次可以把一个加号和它相邻的减号交换。他想知道最少需要多少次操作才能把第一个字符串变换成第二个字符串。你现在要去帮助他完成那个这个问题。
输入多组测试数据
每组数据有两行,每行包含一个由”+”和”-“最成的字符串。每...
分类:
其他好文 时间:
2015-09-01 09:16:59
阅读次数:
262
刚开始还尼玛各种优化,怕n*n的时间复杂度还通不过,再想能不能简化一下,最后发现暴力破解直接AC,我太高估它了......
题意就是给你一个字符串,求出这个字符串的最长子串,但是这个子串是有规则的,就是不能有重复的字符,我是从第一个字符开始遍历到最后一个字符,因为最长的子串一定是以其中一个字符为开头,我逐个统计一遍最长子串就OK了,其实刚才我有想了一下,这个其实也不是n*n的时间复杂度,因为字符...
分类:
其他好文 时间:
2015-09-01 06:57:33
阅读次数:
187
标识符是用来标识某样东西的名字。在命名标识符的时候,你要遵循这些规则:标识符的第一个字符必须是字母表中的字母(大写或小写)或者一个下划线(‘_’)。标识符名称的其他部分可以由字母(大写或小写)、下划线(‘_’)或数字(0-9)组成。标识符名称是对大小写敏感的。例如,myname和myName不是一个...
分类:
编程语言 时间:
2015-08-30 22:47:45
阅读次数:
151
//给两个字符串s和t
//对于字符串s可以在s中任意一个字符c,在其后面加上d(d!=c)
//问s是否能转换为t
//满足两个条件
//1:对于s中的所有的字符t都有
//2:对于s和t的第一个字符要相同且s中连续的个数要大于等于t
#include
#include
#include
using namespace std ;
const int maxn = 1e5+10 ;
char s...
分类:
其他好文 时间:
2015-08-30 19:37:16
阅读次数:
92
关于nextLine()和next()的使用关键在于:next() 方法遇见第一个有效字符(非空格,换行符)时,开始扫描,当遇见第一个分隔符或结束符(空格或换行符)时,结束扫描。、这时使用nextLine(),继续读,有可能读入第一个字符是空格或换行符。 在实现字符窗口的输入时,我个人更喜欢选择使....
分类:
其他好文 时间:
2015-08-30 12:32:52
阅读次数:
177
题目
题目:输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。
例如,输入”They are students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.”。
思路
利用两层for循环依次根据第二个字符串中出现的字符将第一个字符串中的同样的字符替换为 ‘\0’,然后将后面的字符移到前面即可;
/*
题目:输入两个字符串,从第一字符串中删...
分类:
其他好文 时间:
2015-08-29 15:30:33
阅读次数:
145
题目:
移除字符串中重复的字符,
如abcadc移除后变为abcd,
注意:可以额外定义一两个变量,但不允许额外开辟一个数组。
思路
这里要求了空间复杂度为O(1),那我们只能用最简单的遍历方法,先让第一个字符与后面的字符一一比较,遇到重复的就把重复的字符用’\0’替换掉,再让第二个字符与右面的字符一一比较,遇到重复的,就把重复的字符用’\0’代替,如此循环,直到最后一个字符,当...
分类:
其他好文 时间:
2015-08-29 14:06:30
阅读次数:
132
利用replace替换字符串时,在正常使用情况下默认只能更改匹配到的第一个字符 var a=new String("fffffddd"); console.log(a.replace("f","a"));更改后的字符串为:affffddd;利用正则表达式可以使全部符合条件的字符都更改var a=ne...
分类:
编程语言 时间:
2015-08-26 17:29:21
阅读次数:
132
7.正则表达式正则表达式用来指定字符串的模式例如[jJ]ava.+[jJ]表示第一个字符串是j或J,第二三四字符是ava,字符串的其他部分有一个或多个字符构成字符集[0-9][A-Za-z]或[^0-9]^表示补集,除0-9的所有元素\d表示数字\D表示非数字点号.表示所有字符\w表示[A-Za-z...
分类:
其他好文 时间:
2015-08-26 01:42:52
阅读次数:
107
题意:给两个字符串a,b,问是否可以将a串变成b串。只有一种操作,即选择a串的一格字符c,在c后面添加一个字符d,要求d和c不同。操作可以进行很多次,也可以不进行。保证a,b非空且a的长度不过b的长度。解法:(千万别想麻烦了)显然如果第一个字符不同,就无解;设两个指针t1,t2分别指向a,b,t1 t2 从0开始扫,发现不同则退出,发现s2[t2 - 1] != s2[t2] (t2 > 0) 则退...
分类:
其他好文 时间:
2015-08-20 20:57:31
阅读次数:
118