关注
#include <stdio.h>
#include <string.h>
int main(void)
{
int i, j, k, p, q, last_j, len_r, len_s;
char regular[188], s[888], record[888], ch, match;
for( ; scanf("%s%s", regular, s)!=EOF; ){
len_r = strlen(regular); len_s = strlen(s);
for(j=0; j<len_s; j++){
if((ch=s[j])>='a'&&ch<='z'){ record[j] = 1; continue; }
if(ch>='A'&&ch<='Z'){ s[j] = ch+32; record[j] = 1; continue; }
if(ch>='0'&&ch<='9'){ record[j] = 1; continue; }
record[j] = 0;
}
for(i=0; i<len_r; i++)
if((ch=regular[i])>='A' && ch<='Z') regular[i] = ch+32;
i = j = k = last_j = 0; //上榜代码这里忘记初始化last_j为0了!!
for( ; k<len_r; ){
if(regular[k] != '*'){ k++; continue; }
break;
}
if(i != k){
match = 0;
for( ; j<len_s; j++)
if(s[j]==regular[i] || regular[i]=='?'&&record[j]){
p = i+1; q = j+1;
for( ; p<k && q<len_s; p++,q++){
if(s[q] == regular[p]) continue;
if(regular[p]=='?' && record[q]) continue;
break;
}
if(p == k){ last_j = j = q; match = 1; break; }
}
if( !match ) goto opt;
}
if(k == len_r){ match = 1; goto opt; }
for(i=++k; k<len_r; i=++k){
for( ; k<len_r; ){
if(regular[k] != '*'){ k++; continue; }
break;
}
if(i != k){
match = 0;
for( ; j<len_s; j++)
if(s[j]==regular[i] || regular[i]=='?'&&record[j]){
p = i+1; q = j+1;
for( ; p<k && q<len_s; p++,q++){
if(s[q] == regular[p]) continue;
if(regular[p]=='?' && record[q]) continue;
break;
}
if(p == k){
for(p=j-1; p>=last_j; p--){
if( record[p] ) continue;
break;
}
if(p != last_j-1) goto opt;
last_j = j = q;
match = 1; break;
}
}
if( !match ) goto opt;
}
}
opt: printf("%s\n", match ? "true" : "false");
}
return 0;
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
08-31 01:30
清华大学 Java 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 如果秋招能重来,我会____ #
10680次浏览 102人参与
# 苦尽甘来时,再讲来时路 #
10530次浏览 182人参与
# “vivo”个offer #
19297次浏览 150人参与
# 如果上班像打游戏,你最想解锁什么技能 #
2492次浏览 32人参与
# 我是面试官,请用一句话让我破防 #
2063次浏览 19人参与
# 为了实习逃课值吗? #
11954次浏览 98人参与
# 快手技术岗信息交流阵地 #
12401次浏览 74人参与
# 校招生月薪1W算什么水平 #
2943次浏览 22人参与
# 机械求职避坑tips #
71323次浏览 485人参与
# 一份好的简历长什么样? #
6708次浏览 171人参与
# 选完offer后,你后悔学机械吗? #
43017次浏览 249人参与
# 秋招许愿,本周能____ #
14306次浏览 94人参与
# 选择和努力,哪个更重要? #
134887次浏览 1036人参与
# 班味很重的人是啥样的? #
4234次浏览 30人参与
# 应届生第一份工资要多少合适 #
3557次浏览 36人参与
# 投递无反馈,如何优化求职策略? #
2358次浏览 26人参与
# 材料专业可以靠半导体脱坑吗? #
26835次浏览 138人参与
# 机械制造秋招总结 #
82505次浏览 817人参与
# 大学最后一个寒假,我想…… #
60562次浏览 654人参与
# 职场新人体验 #
120453次浏览 826人参与
# 你觉得实习能学到东西吗 #
114570次浏览 1248人参与
# 新凯来求职进展汇总 #
58008次浏览 150人参与
查看11道真题和解析