杭电 1088 字符处理
来源:互联网 发布:js怎么判断是不是数组 编辑:程序博客网 时间:2024/05/21 10:13
Problem Description
If you ever tried to read a html document on a Macintosh, you know how hard it is if no Netscape is installed.
Now, who can forget to install a HTML browser? This is very easy because most of the times you don’t need one on a MAC because there is a Acrobate Reader which is native to MAC. But if you ever need one, what do you do?
Your task is to write a small html-browser. It should only display the content of the input-file and knows only the html commands (tags)
which is a linebreak and
which is a horizontal ruler. Then you should treat all tabulators, spaces and newlines as one space and display the resulting text with no more than 80 characters on a line.
Input
The input consists of a text you should display. This text consists of words and HTML tags separated by one or more spaces, tabulators or newlines. A word is a sequence of letters, numbers and punctuation. For example, “abc,123” is one word, but “abc, 123” are two words, namely “abc,” and “123”. A word is always shorter than 81 characters and does not contain any ‘<’ or ‘>’. All HTML tags are either
or
.
Output
You should display the the resulting text using this rules: [bk][bk]. If you read a word in the input and the resulting line does not get longer than 80 chars, print it, else print it on a new line. [bk][bk]. If you read a
in the input, start a new line. [bk][bk]. If you read a
in the input, start a new line unless you already are at the beginning of a line, display 80 characters of ‘-’ and start a new line (again). The last line is ended by a newline character.
Sample Input
Hallo, dies ist eine
ziemlich lange Zeile, die in Html
aber nicht umgebrochen wird.
Zwei
produzieren zwei Newlines.
Es gibt auch noch das tag
was einen Trenner darstellt.
Zwei
produzieren zwei Horizontal Rulers.
Achtung mehrere Leerzeichen irritieren
Html genauso wenig wie
mehrere Leerzeilen.
Sample Output
Hallo, dies ist eine ziemlich lange Zeile, die in Html aber nicht umgebrochen
wird.
Zwei
produzieren zwei Newlines. Es gibt auch noch das tag
was einen Trenner darstellt. Zwei
produzieren zwei Horizontal Rulers. Achtung mehrere Leerzeichen irritieren Html
genauso wenig wie mehrere Leerzeilen.
#include<string.h>#include<stdio.h>int main(){ int i,j,k=0;//k一行的字符长度 char a[100]; while(scanf("%s",a)!=EOF) { if(strcmp(a,"<br>")==0)//判断 { printf("\n"); k=0;//由于是下一行 需要k清零 } else if(strcmp(a,"<hr>")==0)//判断 { if(k!=0) printf("\n"); for(i=0;i<80;i++) printf("-"); printf("\n"); k=0;//由于是下一行 需要k清零 } else { if(k==0)//每行第一个字符串前没空格 { printf("%s",a); k=strlen(a); } else if(k+1+strlen(a)<=80) { printf(" %s",a); k+=strlen(a)+1; } else { printf("\n"); printf("%s",a); k=strlen(a); } } } printf("\n"); return 0;}
- 杭电 1088 字符处理
- 杭电 1037 Online Judge 字符处理
- 杭电1860统计字符(字符串处理)
- 杭电 1860 统计字符
- 杭电1860 统计字符
- 杭电acm统计字符
- 杭电 字符串处理 map
- 字符统计(杭电1860)
- 统计字符(杭电1860)
- 杭电 2024 C语言合法字符
- 杭电acm2017 字符数量统计
- 【杭电-oj】-2719-特定字符转换成非字符
- 杭电OJ(HDOJ)1088题:Write a simple HTML Browser(字符操作)
- 杭电1020 Encoding (字符串处理)
- 杭电HDU 4550 字符串处理
- 杭电2567寻梦(字符串处理)
- 杭电 1020【统计连续相同的字符】
- 杭电 hdu 1860 统计字符 用string
- centos7下jetty临时目录被tmpwatch删除导致资源文件(css/js)无法加载的问题
- java获取客户端的ip地址
- sqoop import 报错:mysqld 没有开启
- 关于H5唤起APP遇到的问题
- 安卓手机判断手机联网状态
- 杭电 1088 字符处理
- hud 5012 Dice(隐式图的搜索 )
- 最短路径问题
- C++实现冒泡排序,选择排序,插入排序,快速排序,归并排序
- dubbo架构简要分析
- 面试
- 关于mysql-connector-net和C#.net
- 吐槽CSDN手机验证
- Redux-form系列教程