Write a simple HTML Browser(HDU-1088)

荣声
2023-12-01

题意

  写一个html解析程序,包含<br>和<hr>。
  链接:link

思路

  按照html语法,多个空白字符会被替换成一个空格。所以依次读取并处理连续字符即可,字符串之间用一个空格隔开即可。

时间复杂度分析

  时间复杂度取决于输入串的长度,总的时间复杂度为 O ( n ) \mathcal{O}(n) O(n)

实现

#include<cstdio>
#include<cstring>
int main(){
    char str[90];
    int leng=0;
    while(scanf("%s",str)!=EOF){
        if(strcmp(str,"<br>")==0){
            printf("\n");
            leng=0;
        }else if(strcmp(str,"<hr>")==0){
            if(leng!=0) printf("\n");
            for(int i=0;i<80;i++) printf("-");
            printf("\n");
            leng=0;
        }else{
            if(leng==0){
                printf("%s",str);
                leng+=strlen(str);
            }else if(leng+1+strlen(str)<=80){
                printf(" %s",str);
                leng+=strlen(str)+1;
            }else{
                printf("\n");
                leng=strlen(str);
                printf("%s",str);
            }
        }
    }
    printf("\n");
}
 类似资料:

相关阅读

相关文章

相关问答