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 ...
随机推荐
- Centos7-卸载自带的jdk 安装jdk8
卸载JDK Centos7一般都会带有自己的openjdk,我们一般都回用oracle的jdk,所以要卸载 步骤一:查询系统是否以安装jdk #rpm -qa|grep java 或 #rpm ...
- mybatis传参的几种方式
1,@Param @参考文章 @Select("select s_id id,s_name name,class_id classid from student where s_name= ...
- Not Found The requested URL / was not found on this server.
http://www.wanysys.cc/coding/php/800.html 今天在做本地PHP项目的时候,想把之前wampserver的本地虚拟服务器环境访问方式改为本地localhost访问 ...
- Cacti在selinux开启的情况下使用
# chcon -R -t httpd_sys_content_t /var/www/html/cacti
- 【转】几种现代GPS测量方法和技术
随着科技的发展,GPS测量技术和方法也在不断的改进和更新,目前用得最多的GPS测量技术方法有如下几种:静态和快速静态定位,差分GPS,RTK,网络RTK技术等等,下面将逐一介绍: 1.静态与快速静态定 ...
- 关系类型字段 -- Django从入门到精通系列教程
该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...
- 我的前端故事----关于前端数据&逻辑的思考
最近重构了一个项目,一个基于redux模型的react-native项目,目标是在混乱的代码中梳理出一个清晰的结构来,为了实现这个目标,首先需要对项目的结构做分层处理,将各个逻辑分离出来,这里我是基于 ...
- 【OCR技术系列之三】大批量生成文字训练集
放假了,终于可以继续可以静下心写一写OCR方面的东西.上次谈到文字的切割,今天打算总结一下我们怎么得到用于训练的文字数据集.如果是想训练一个手写体识别的模型,用一些前人收集好的手写文字集就好了,比如中 ...
- Java设计模式——装饰模式
转载自:http://blog.csdn.net/xu__cg/article/details/53024490 抽象构件 public interface CarInterface { void m ...
- webrtc底层一对一连接过程探索(二)
一.连接过程继续解读-----fun32解读 1.1 fun32.02 "undefined" != typeof cordova && (N = !0, D = ...