UVA232

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UVA232相关的知识,希望对你有一定的参考价值。

这只是大概的雏形。

步骤就是:1输入网格,2给网格里的起始格编序号,3输出所有字母,前面要加序号

#include<stdio.h>
#include<ctype.h>
#include<string.h>
char a[15][15];//保存字母和* 
int b[15][15];//保存顺序编号 
int main(){
    int r,c;
    int d=0;
    scanf("%d %d",&r,&c);
    memset(a,0,sizeof(a));
    memset(b,0,sizeof(b));
    //输入网格 
    getchar();//输入字符串要加getchar来跳过回车 
    for(int i=0;i<r;i++)
        gets(a[i]);
    //标记起始格        
    for(int i=0;i<r;i++)
        for(int j=0;j<c;j++){
            if(a[i][j] != * && (!isalpha(a[i][j-1]) || !isalpha(a[i-1][j-1]) ) )
                b[i][j]=++d; 
        } 

    for(int i=0;i<r;i++)
        for(int j=0;j<c;j++){
            if(b[i][j] && (b[i][j-1] == * || !b[i][j-1])){
                printf("%d.",b[i][j]);
            }//输出数字 
            if(isalpha(a[i][j]))
                putchar(a[i][j]);//输出每一个字母 
            if(a[i][j+1] == * || !a[i][j+1]){
                printf("\n");
            }
        }
        
    return 0;
}

 

以上是关于UVA232的主要内容,如果未能解决你的问题,请参考以下文章

uva 232 Crossword Answers

UVA232

Corssword Answer UVa232

UVa 232 - Crossword Answers

UVA232字符串处理

[算法竞赛入门经典] Crossword Answers ACM/ICPC World Finals 1994,UVa232