Redian新闻
>
我中共开县成功组织干部职工(中小学生)看电影zz
avatar
我中共开县成功组织干部职工(中小学生)看电影zz# Joke - 肚皮舞运动
p*2
1
刚被问到的,答的比较乱,用的recursion解决的。
两个string,string1是个regular string,
string2 contains one or more '*', each '*' represents 1 or more characters
write a function to find the pattern of string2 in string1, return index.
avatar
p*w
2
我中共开县成功组织干部职工(中小学生)看电影zz
中共开县县委组织部
中共开县县委宣传部
中共开县县委教育工作委员会
关于组织观看庆祝建党九十周年国产优秀电影的通知
各镇乡街道党委(党工委),县委各部委,县级各部门党组(党委),县直管企事业单
位党组织,各中小学、幼儿园、县直属学校:
在全国人民喜庆中国共产党建党90周年之际,历史巨片《建党伟业》和优秀影片《秋之
白华》将于近期在我县公映,这些影片生动再现了中国共产党90年的峥嵘岁月和光辉业
绩,热情讴歌以毛泽东、邓小平、江泽民同志为核心的党的三代中央领导集体和以胡锦
涛同志为总书记的党中央团结带领全国各族人民进行革命、建设和改革开放所建立的丰
功伟绩,讴歌老一辈无产阶级革命家为人民抛头颅、洒热血打下的江山。根据中共重庆
市委《关于中国共产党成立90周年纪念活动的通知》(渝委发[2011]6号)要求,为了
让广大干部群众进一步了解中国共产党的建党历史, 弘扬爱国主义精神,请各单位、各
部门认真组织广大干部职工(中小学生)前往观看。现将有关事项通知如下:
一、观看时间及场次安排
2011年6月15日至7月5日,每天14:30、19:00。
二、观看地点
开县电影院。
三、观看电影
《建党伟业》、《秋之白华》。
四、观看形式
组织干部职工(中小学生)在开县电影院集中观看或分散观看。
五、有关要求
(一)高度重视。各单位、各部门要高度重视这次观看《建党伟业》爱国电影活动。领
导干部要带头观看,把观看《建党伟业》电影活动与庆祝建党90周年和爱国主义教育相
结合,大力弘扬爱国主义精神。
(二)认真组织。各单位、各部门要落实专人负责组织此次观影活动,主动联系观看相
关事宜。联系电话:13512326669;13635377111;13193055333。
(三)反馈信息。由开县电影院将各单位组织观看情况及时反馈到县委宣传部。
中共开县县委组织部
中共开县县委宣传部
中共开县县委教育工作委员会
2011年6月7日
主题词:宣传教育 影片 观看 通知
中共开县县委宣传部办公室 2011年6月8日印
avatar
y*g
3
只要求返回第一个吗?
把string2 按* break成list of string 然后按顺序
avatar
d*e
4
j-point?

【在 p*********w 的大作中提到】
: 我中共开县成功组织干部职工(中小学生)看电影zz
: 中共开县县委组织部
: 中共开县县委宣传部
: 中共开县县委教育工作委员会
: 关于组织观看庆祝建党九十周年国产优秀电影的通知
: 各镇乡街道党委(党工委),县委各部委,县级各部门党组(党委),县直管企事业单
: 位党组织,各中小学、幼儿园、县直属学校:
: 在全国人民喜庆中国共产党建党90周年之际,历史巨片《建党伟业》和优秀影片《秋之
: 白华》将于近期在我县公映,这些影片生动再现了中国共产党90年的峥嵘岁月和光辉业
: 绩,热情讴歌以毛泽东、邓小平、江泽民同志为核心的党的三代中央领导集体和以胡锦

avatar
p*2
5

只需要返回第一个match的index。×可以代表至少一个character。
如果中间很多个×连着怎么办?

【在 y*******g 的大作中提到】
: 只要求返回第一个吗?
: 把string2 按* break成list of string 然后按顺序

avatar
y*g
6
连续n个X就至少跳过n在找下一个。
int match(string s1, string s2) {
vector vs;
int p = 0;
int q = 0;
//break s2 to segements
while(true) {
q++;
if(q == s2.size()) {
vs.push_back(s2.substr(p,q-p));
break;
}
if((s2[p] == '*') ^ (s2[q] == '*')) {
vs.push_back(s2.substr(p,q-p));
p = q;
}
}
int index = 0; //to be returned;
int currentIndex = 0;
for(int i=0, n = vs.size(), limit = s1.size(); istring item = vs[i];
if(item[0] == '*') {
currentIndex += item.length();
if(currentIndex >= limit) {
index = -1;
break; //some * at tail
}
} else {
currentIndex = s1.find(item,currentIndex);
if(currentIndex == -1) {
index = -1; //not found;
break;
}
if(i == 0) {
index = currentIndex;
}
currentIndex += item.length();
}
}
return index;
}

【在 p*****2 的大作中提到】
:
: 只需要返回第一个match的index。×可以代表至少一个character。
: 如果中间很多个×连着怎么办?

avatar
p*2
7
多谢。
avatar
H*s
8
赞这个解答!
这题只要在string1中找到vs[0]的index, 剩下的就是验证而已, 要么 index valid,
要么不valid.

【在 y*******g 的大作中提到】
: 连续n个X就至少跳过n在找下一个。
: int match(string s1, string s2) {
: vector vs;
: int p = 0;
: int q = 0;
: //break s2 to segements
: while(true) {
: q++;
: if(q == s2.size()) {
: vs.push_back(s2.substr(p,q-p));

avatar
g*y
9
不能这么干,考虑aabc和a*abc。
这个要用状态机或者recursive来做。

【在 y*******g 的大作中提到】
: 连续n个X就至少跳过n在找下一个。
: int match(string s1, string s2) {
: vector vs;
: int p = 0;
: int q = 0;
: //break s2 to segements
: while(true) {
: q++;
: if(q == s2.size()) {
: vs.push_back(s2.substr(p,q-p));

avatar
y*g
10
aabc和a*abc本来就不match啊, 因为遇到*就跳过了,从b开始找 abc。

【在 g**********y 的大作中提到】
: 不能这么干,考虑aabc和a*abc。
: 这个要用状态机或者recursive来做。

avatar
c*1
11
原题的意思有不用理解吧
each '*' represents 1 or more characters
*可以match a,aa,aaa
但是可以match ab吗
上面那个贴的代码是假设可以match的
avatar
g*y
12
你在Java里试一试:
System.out.println("aabc".matches("a*abc"));

【在 y*******g 的大作中提到】
: aabc和a*abc本来就不match啊, 因为遇到*就跳过了,从b开始找 abc。
avatar
y*g
13
java是regex, lz问的不是这个意思

【在 g**********y 的大作中提到】
: 你在Java里试一试:
: System.out.println("aabc".matches("a*abc"));

avatar
C*1
14
我还以为题目是说*表示它前面的character可以出现1次或多次呢, 就是有点类似
regular expression里那样的, 这样的话, aabc和a*abc 应该是match的啊。
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。