2道acm编程题(2014):1.编写一个浏览器输入输出(hdu acm1088);2.encoding(hdu1020)
//1088(参考博客:http://blog.csdn.net/libin56842/article/details/8950688)
//1.编写一个浏览器输入输出(hdu acm1088);
//思路:对已经输入的字符串进行处理,遇到<br><hr>分别进行处理。遇到多于80个字符(统计该行的长度)或者<br>或者结束,则换行;遇到<hr>,输出80个‘-’。
#include<stdio.h>
#include<string.h>
#define N 10000
int main()
{
char a[N];
int i;
int cnt = 0;//用于统计该行是否是达到80chars,当其为0的时候,说明是新的一行的开头
int len;//用于记录该word的长度
//一个个word通过每次读入进去,每个word放在字符串中,每次都会进行不同的处理
//调试的时候发现,将html page整个input进去,每次执行的时候,就会读入以空格和换行为分隔的一个个单词,比如第一行分隔为"Hallo," \" dies"\"ist"\"eine"
while (~scanf("%s",a))
{
//如果此时读入的word的是<br>,则换行
if (!strcmp(a,"<br>"))
{
printf("\n");
cnt = 0;
}
//如果此时读入的word的是<hr>,
else if (!strcmp(a, "<hr>"))
{
if (cnt)
{
//如果不是新的一行的话,需要先重新起一行
printf("\n");
//调试的时候跳出该循环,可以在循环外语句设置一个断点
for ( i = 0; i < 80; i++)
{
printf("-");
}
printf("\n");
}
else
{
for (i = 0; i < 80; i++)
{
printf("-");
}
printf("\n");
}
cnt = 0;
}
else//判断该word长度和80chars的比较结果
{
len = 0;
len = strlen(a);
if (!cnt)//cnt为0的时候,说明是新的一行,就不用另起新的一行
{
cnt = len;
printf("%s", a);
}
else if (cnt+len+1>80)//cnt是记录在输入该word之前该行的chars数,加上len是该行现在有的chars数,若该行大于80,则换行
{
cnt = len;
printf("\n%s", a);
}
else
{
cnt += len + 1;
printf(" %s", a);
}
}
}
printf("\n");
return 0;
}
//1020(C语言基础不够啊,要多多练习)
//思路:在当前字符后,统计和当前字符相同的字符个数。
//实现:循环遍历该字符串的每一个字符,判断其和其后的一个字符是否相同,如果相同,则count++;否则,当前字符后面的邻近的一个字符和其不相同,接着先判断count是否是1,如果是1,则直接输出不用继续判断了;如果不是1,则直接输出统计的个数,以及当前字符。
#include<stdio.h>
#include<string.h>
#define N 100001
char a[N];
int main(){
int count;
int i;
int n;
scanf("%d", &n);
while (n--)
{
scanf("%s", a);
count = 1;
for ( i = 0; i < strlen(a); i++)
{
//判断当前字符后面是否有和当前字符一样的字符,并统计个数
if (a[i] == a[i + 1])
{
count++;
}
else
{
//如果没有和后面的字符相同的字符了,则根据count做出不同的操作
//如果count==1,则输出
if (count==1)
{
printf("%c", a[i]);
}
//否则,输出count和当前字符
else
{
printf("%d%c", count, a[i]);
count = 1;
}
}
}
printf("\n");
}
return 0;
}
2道acm编程题(2014):1.编写一个浏览器输入输出(hdu acm1088);2.encoding(hdu1020)的更多相关文章
- 汤姆大叔的6道javascript编程题题解
看汤姆大叔的博文,其中有篇(猛戳这里)的最后有6道编程题,于是我也试试,大家都可以先试试. 1.找出数字数组中最大的元素(使用Math.max函数) var a = [1, 2, 3, 6, 5, 4 ...
- 2道acm简单题(2010):1.猜数字游戏;2.字符串提取数字并求和;
//第一题是猜数字的游戏.//题目:随即产生一个3位的正整数,让你进行猜数字,//如果猜小了,输出:"猜小了,请继续".//如果猜大了,输出:"猜大了,请继续" ...
- 整理自百度知道提问的几道Java编程题
蚂蚁爬杆 问题描述: 有一根27厘米的细木杆,在第3厘米.7厘米.11厘米.17厘米.23厘米这五个位置上各有一只蚂蚁.木杆很细,不能同时通过一只蚂蚁.开始时,蚂蚁的头朝左还是朝右是任意的,它们只会朝 ...
- 2道acm简单题(2013):1.(时分秒)时间相减;2.主持人和N-1个人玩游戏,每个人说出自己认识的人数,判断其中是否有人说谎。
/*1.题目:输入一个数,代表要检测的例子的个数,每个例子中:输入两个时间(格式HH:MM : SS),前面时间减去后面时间,输出在时钟上显示的时间,格式一样,如果是以为数字的前面补零.*//**思路 ...
- 3道acm简单题(2011):1.判断是否能组成三角形;2.判断打鱼还是晒网;3.判断丑数。
//1.输入三个正整数A.B.C,判断这三个数能不能构成一个三角形.//思路:最小的两边之和是否是大于第三边#include<iostream>#include<algorithm& ...
- 图论期末大作业编程题(如何判断一个4连通4正则图为无爪、无K4图)
博士期间估计这可能是唯一一个要编程的作业,搞了半天弄出这个东西,放这里为以后用到的时候查找方便. 说来也是可笑,读博士期间发现大家对上课也都没什么兴趣,老师也是那么回事,都说博士期间学的课程是要有助于 ...
- shell编程之服务脚本编写,文件锁以及信号捕获
shell脚本编程是linux运维工程师必备的技能,也是非常重要的一个技能,所以把shell编程学好,只有好处.基础语法我也就不讲了,学过C语言这些语言的,稍微看一下就能明白shell编程的基础,所以 ...
- 30道小学生四则运算题C/C++编程
软件工程科课上,老师通过实例讲解什么是程序,程序和软件的区别,要求我们通过短时间写一道编程题, 题目就是编写30道小学生四则运算题.以下就是源代码: #include<iostream.h> ...
- 50道经典的JAVA编程题(目录)
这份题从2013做到2014啊...哈哈,整理个目录吧.为了好查阅,也为了监督自己好好的去做完这50道题.当然,有些题实在做得没意思就跳过了,或者自己改题了.题目来源于:http://blog.sin ...
随机推荐
- Velocity动态拼接字符串
1.在全局定义一个变量: #set($varName = "") 2.拼接字符串病截取字符串: #foreach( $role in $adminUser.roles) #set( ...
- Log4j源码解析--框架流程+核心解析
OK,现在我们来研究Log4j的源码: 这篇博客有参照上善若水的博客,原文出处:http://www.blogjava.net/DLevin/archive/2012/06/28/381667.htm ...
- Log4j扩展使用--日志记录器Logger
OK,现在我们认真的研究下Logger的配置,进行相关配置扩展. Log4j有三个主要的组件:Loggers(记录器),Appenders(输出源)和Layouts(布局).其中,Logger负责记录 ...
- POI--HSSFRow类
用POI在工作表里作成一个行,可以用「HSSFRow」类,它的构造方法有三个. protected HSSFRow() protected HSSFRow(Workbook book, Sheet s ...
- JS小练习1
要求: 一.定义"改变颜色"的函数 二.定义"改变宽高"的函数 三.定义"隐藏内容"的函数 四.定义"显示内容"的函数 ...
- 面试中的Java链表
链表作为常考的面试题,并且本身比较灵活,对指针的应用较多.本文对常见的链表面试题Java实现做了整理. 链表节点定义如下: static class Node { int num; Node next ...
- python _init_学习
今天继续学习python,接触了_init_,感觉很好玩照着教程手写了一些代码,感觉编程语言是互通的,只是换个了形式来表达 #coding=utf-8#类似于java的构造器class Person: ...
- linux下安装phpunit简单方法
现在安装phpunit相当简单,只需要下载phar压缩格式的phpunit文件,给个执行权限,就可以执行了 以下是一段官方安装文档 wget https://phar.phpunit.de/phpun ...
- Nginx负载均衡搭建(Window与Linux)
windows上搭建nginx负载均衡 1.准备几台http服务器软件,这里选用一台apache一台tomcat apache(windows)下载链接:https://www.apachehaus. ...
- XBIM 基于 WexBIM 文件在 WebGL 浏览和加载
目录 xBIM 应用与学习 (一) xBIM 应用与学习 (二) xBIM 基本的模型操作 xBIM 日志操作 XBIM 3D 墙壁案例 xBIM 格式之间转换 xBIM 使用Linq 来优化查询 x ...