`

POJ 2271 HTML

阅读更多
http://poj.org/problem?id=2271

题意:给你HTML代码,翻译出来
要点:
①每行长度不得超过80
②HTML标签只有2个
<br>:换行
<hr>:换行【若本来就在开头不用先换行】再输出80个'-',接着换行
③最后要换行

Sample Input
Hallo, dies ist eine
ziemlich lange Zeile, die in Html
aber nicht umgebrochen wird.
<br>
Zwei <br> <br> produzieren zwei Newlines.
Es gibt auch noch das tag <hr> was einen Trenner darstellt.
Zwei <hr> <hr> 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.


题目飞一般的水,只要你细心,会用打表调试,并且测试极端情况的正确性
如输入:

11111111112222222222333333333344444444445555555555666666666677777777778888888888
11111111112222222222333333333344444444445555555555666666666677777777778888888888
11111111112222222222333333333344444444445555555555666666666677777777778888888888


#include <iostream>
#include <fstream>
#include <algorithm>
#include <string>
#include <set>
#include <map>
#include <queue>
#include <utility>
#include <stack>
#include <list>
#include <vector>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include <ctime>
#include <ctype.h>
using namespace std;

int main()
{
	//fstream out ("d:\\ans.txt", ios::out);
	int num = 0;
	char word[85];
	while (scanf ("%s", word) != EOF)
	{
		if (!strcmp (word, "<br>"))
		{
			printf ("\n")/*, out << endl*/;
			num = 0;
			continue;
		}
		if (!strcmp (word, "<hr>"))
		{
			if (num > 0)
				printf ("\n")/*, out << endl*/;
			num = 0;
			printf ("--------------------------------------------------------------------------------\n");
			//out << "--------------------------------------------------------------------------------\n";
			continue;
		}
		int len = strlen(word);
		if (num == 0)
			num = len;
		else
		{
			if (num + 1 + len > 80)   //+1是因为空格
				printf ("\n"), num = len/*, out << endl*/;
			else printf (" "), num += 1 + len/*, out << ' '*/;
		}
		printf ("%s", word)/*, out << word*/;
	}
	printf ("\n");
	//out << endl;
	return 0;
}
7
4
分享到:
评论

相关推荐

    北大poj JAVA源码

    例如,POJ3.htm文件可能是一个HTML文档,包含了对某一个特定POJ问题的解释和解决方案的链接,或者是对一系列问题的概述。通过查看这个文件,你可以了解到具体的问题背景,以及对应的Java源码是如何解决这些问题的。 ...

    POJ离线版(无需联网)

    离线版的POJ.chm文件是一种基于HTML的帮助文档格式,它包含了网站上的所有题目、说明、样例输入和输出,以及可能的解题思路。用户可以通过阅读这些内容,理解题目要求,并在本地环境中编写和调试代码,然后再在网络...

    poj1005.zip_北大poj1005

    这个列表表明压缩包内可能有一个名为"poj1005"的文件,这可能是该问题的HTML描述文件,包含题目详细信息,包括题目陈述、输入输出格式、数据范围、限制条件等。有时,这个文件可能还包括样例输入输出、测试数据、...

    poj北大在线测试全部题目1

    这是在linux批量下载的html文档打包集,但是html文档没有重命名为.html文档,因为linux是不区分后缀名的,但是在windows下需要指定用浏览器打开相应的文件,一共3000个试题吧,但是挺小的,方便那些省钱上网的人

    POJ题目分类及部分accepted源码

    《POJ题目分类及部分accepted源码》是一个针对编程竞赛训练的重要资源,主要涵盖了从1001到3445的POJ(Problem Set of Peking University)题目。POJ是中国最早的在线编程竞赛平台之一,它为参赛者提供了丰富的算法...

    菜鸟教程C练习题答案

    包含菜鸟教程C语言练习题的大部分答案,所用编译器为VC++6.0(DEV C++) https://www.runoob.com/cprogramming/c-100-examples.html

    LCA与RMQ相关题解1

    在POJ1330中,题目要求求解一棵树上两点的最近公共祖先。对于这种基础题,可以使用暴力方法,即通过遍历从一个节点到根节点的路径,再遍历另一个节点到根节点的路径,找到最早的交点即为最近公共祖先。然而,当查询...

    dayworkspace:从这个库的名字可以清晰的看出来。我这个用来保存我平时写的一些 Dome 和一些练手的小项目

    包括 pat poj hdoj leetcode 等。 blog 我自己的博客最先在这里进行更新,然后会同步到我的上面去。 html5_learn 因为我要学习 Django 所以看一些 html 的书里面的练习题。包括一些 html css js 的一些学习性的代码...

    NOIP2011提高组初赛试题答案C++.doc

    8. **Web标准**:万维网联盟(W3C)制定了一系列标准,如HTML、XML、CSS,以确保Web内容的跨平台兼容性。 9. **排序算法**:题目中的站队方法类似于插入排序,每个学生相当于一个元素,寻找合适位置的过程就是插入...

    杭电浙大北大acm集

    本资源采用CHM(Compiled HTML Help)格式,是一种Windows下的帮助文件格式,具有小巧、快速检索和离线阅读的特点。用户可以轻松查阅题目和答案,无需联网,非常适合学习和备考。 四、学习策略 1. 题目分类:按照...

    字符串进阶前导知识1

    通过了解后缀数组,我们可以解决如poj3261这样的模板题。 对于后缀数组的入门,推荐阅读的两篇文章是: 1. https://www.cnblogs.com/nietzsche-oier/articles/6621881.html 2. ...

    acmacm经典题库

    5. **提交与验证**:将代码提交到在线评测系统(如HDOJ、POJ、Codeforces等),查看运行结果,根据反馈调整代码。 6. **复盘总结**:分析错误原因,学习答案中的优秀解法,加深对问题和算法的理解。 通过这样的...

    北京大学 PKU JudgeOnline jsp mysql 12MB

    7. **POJ**: 这可能是“Problemset”的缩写,代表题目集合,也可能是指北京大学PKU JudgeOnline系统中的一个具体项目或部分。 总结来说,北京大学PKU JudgeOnline是基于JSP和MySQL构建的在线编程评测系统,它为用户...

    Andalus-EthCPC

    安达卢斯竞争性程序设计在线法官(ACPOJ) 它是运行编程竞赛的自动判断系统。 它具有一种提交问题解决方案的机制,可以对它们进行全自动判断,并为团队,陪审团和公众提供(web)界面。 要求 安装python3 创建...

    OICodeRepository:OI代码仓库

    OICodeRepository zhylj 2019.10.1从今起,我就把代码存在这里,欢迎大家帮我D (c) e (o) b (p) u (y) g代码存放优先级:xxOI =罗古&gt; Poj = loj&gt; Bzoj不太可能会存放在多个地方。请查找同内容题。不保证一定...

Global site tag (gtag.js) - Google Analytics