设为首页 加入收藏

TOP

UVA 题目10010 - Where's Waldorf? (四)
2015-11-21 01:18:33 来源: 作者: 【 】 浏览:18
Tags:UVA 题目 10010 Where' Waldorf
tartR = i+1;
??????StartC = j+1;
?????}
?????else if(StartR ==? i+1 && StartC > j+1){
??????StartR = i+1;
??????StartC = j+1;
?????}
????}
???}
???//right - left
???if(j - len + 1>= 0){
????flag = 0;
????for(k = 0;k < len;k++){
?????if(str[k] != Matrix[i][j-k]){
??????flag = 1;
??????break;
?????}
????}
????if(flag == 0){
?????if(StartR >? i+1){
??????StartR = i+1;
??????StartC = j+1;
?????}
?????else if(StartR ==? i+1 && StartC > j+1){
??????StartR = i+1;
??????StartC = j+1;
?????}
????}
???}
???//up - down
???if(i + len <= M){
????flag = 0;
????for(k = 0;k < len;k++){
?????if(str[k] != Matrix[i+k][j]){
??????flag = 1;
??????break;
?????}
????}
????if(flag == 0){
?????if(StartR >? i+1){
??????StartR = i+1;
??????StartC = j+1;
?????}
?????else if(StartR ==? i+1 && StartC > j+1){
??????StartR = i+1;
??????StartC = j+1;
?????}
????}
???}
???//down - up
???if(i - len + 1 >= 0){
????flag = 0;
????for(k = 0;k < len;k++){
?????if(str[k] != Matrix[i-k][j]){
??????flag = 1;
??????break;
?????}
????}
????if(flag == 0){
?????if(StartR >? i+1){
??????StartR = i+1;
??????StartC = j+1;
?????}
?????else if(StartR ==? i+1 && StartC > j+1){
??????StartR = i+1;
??????StartC = j+1;
?????}
????}
???}
???//right - up
???if(j + len <= N && i - len + 1 >= 0){
????flag = 0;
????for(k = 0;k < len;k++){
?????if(str[k] != Matrix[i-k][j+k]){
??????flag = 1;
??????break;
?????}
????}
????if(flag == 0){
?????if(StartR >? i+1){
??????StartR = i+1;
??????StartC = j+1;
?????}
?????else if(StartR ==? i+1 && StartC > j+1){
??????StartR = i+1;
??????StartC = j+1;
?????}
????}
???}
???//right - down
???if(j + len <= N && i + len <= M){
????flag = 0;
????for(k = 0;k < len;k++){
?????if(str[k] != Matrix[i+k][j+k]){
??????flag = 1;
??????break;
?????}
????}
????if(flag == 0){
?????if(StartR >? i+1){
??????StartR = i+1;
??????StartC = j+1;
?????}
?????else if(StartR ==? i+1 && StartC > j+1){
??????StartR = i+1;
??????StartC = j+1;
?????}
????}
???}
???//left - up
???if(j - len + 1 >= 0 && i - len + 1 >= 0){
????flag = 0;
????for(k = 0;k < len;k++){
?????if(str[k] != Matrix[i-k][j-k]){
??????flag = 1;
??????break;
?????}
????}
????if(flag == 0){
?????if(StartR >? i+1){
??????StartR = i+1;
??????StartC = j+1;
?????}
?????else if(StartR ==? i+1 && StartC > j+1){
??????StartR = i+1;
??????StartC = j+1;
?????}
????}
???}
???//left - down
???if(j - len + 1 >= 0 && i + len <= M){
????flag = 0;
????for(k = 0;k < len;k++){
?????if(str[k] != Matrix[i-k][j+k]){
??????flag = 1;
??????break;
?????}
????}
????if(flag == 0){
?????if(StartR >? i+1){
??????StartR = i+1;
??????StartC = j+1;
?????}
?????else if(StartR ==? i+1 && StartC > j+1){
??????StartR = i+1;
??????StartC = j+1;
?????}
????}
???}
??}//for j
?}//for i
?return 0;
}

int main (){
?int i,j,Case,k,M,N;
?//freopen("C:\\Users\\XIAOSI\\Desktop\\acm.txt","r",stdin);?
?while(scanf("%d",&Case) != EOF){
??while(Case--){
???scanf("%d %d",&M,&N);
???//输入字符矩阵
???for(i = 0;i < M;i++){
????scanf("%s",temp);
????for(j = 0;j < N;j++){
?????Matrix[i][j] = temp[j];
?????//转换为小写
?????if(Matrix[i][j] >= 'A' && Matrix[i][j] <= 'Z'){
??????Matrix[i][j] = Matrix[i][j] - 'A' + 'a';
?????}
????}
???}
???scanf("%d",&k);
???//待匹配串
???for(i = 0;i < k;i++){
????scanf("%s",str);
????int len = strlen(str);
????//转换为小写
????for(j = 0;j < len;j++){
?????if(str[j] >= 'A' && str[j] <= 'Z'){
??????str[j] = str[j] - 'A' + 'a';
?????}
????}
????//printf("%s",str);
????Match(M,N,StartR,StartC);
????printf("%d %d\n",StartR,StartC);
???}
???//每组测试之间有空行
???if(Case){
????printf("\n");
???}
??}
?}
?return 0;
}

?


?

首页 上一页 1 2 3 4 下一页 尾页 4/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇HDU1165:Eddy's research II 下一篇hdu 4153(数学)

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: