九度OJ 1195:最长&最短文本 (搜索)
2024-08-29 16:17:46
时间限制:1 秒
内存限制:32 兆
特殊判题:否
提交:3144
解决:1156
- 题目描述:
-
输入多行字符串,请按照原文本中的顺序输出其中最短和最长的字符串,如果最短和最长的字符串不止一个,请全部输出。
- 输入:
-
输入包括多行字符串,字符串的长度len,(1<=len<=1000)。
- 输出:
-
按照原文本中的顺序输出其中最短和最长的字符串,如果最短和最长的字符串不止一个,请全部输出。
- 样例输入:
-
hello
she
sorry
he
- 样例输出:
-
he
hello
sorry
思路:
先搜索一遍,知道最短长度和最长长度,然后遍历输出。
也可排序后输出。
代码:
#include <stdio.h>
#include <string.h>
#include <stdlib.h> #define N 1000 int cmp(const void *a, const void *b)
{
return strlen((char *)a) - strlen((char *)b);
} int main(void)
{
int n;
int i, j;
char s[N][N+1]; i = 0;
while (scanf("%s", s[i]) != EOF)
i++; n = i;
qsort(s, n, sizeof(s[0]), cmp);
for (i=1; i<n && strlen(s[i])==strlen(s[0]); i++) ;
for (j=0; j<i; j++)
printf("%s\n", s[j]);
if (strlen(s[0]) != strlen(s[n-1]))
{
for (i=n-2; i>=0 && strlen(s[i])==strlen(s[n-1]); i--) ;
for (j=i+1; j<n; j++)
printf("%s\n", s[j]);
} return 0;
}
/**************************************************************
Problem: 1195
User: liangrx06
Language: C
Result: Accepted
Time:10 ms
Memory:1820 kb
****************************************************************/
最新文章
- xml文档解析
- document对象补充
- express-partials与express4.x不兼容问题
- LA 5135 井下矿工
- 在VS中使用类模板出现出现LNK2019: 无法解析的外部符号错误。
- [转]Python中urllib与urllib2的区别与联系
- 整数划分 Integer Partition(一)
- 关于Git和SVN的对比
- Be Pythonic ,Google Python Style Guide
- 下拉列表框 select 动态赋值
- angularJS 自定义元素和属性
- CentOS 安装以及配置Apache php mysql
- UIP源码之ARP过程分析
- Spring新下载地址
- Android官方命令深入分析之hprof-conv
- CF Good Bye 2018
- 墨者学院——密码学加解密实训(Base64转义)
- Docker的概念术语(2)
- (第一篇) 一步一步带你了解linq to Object
- 怎么解决numpy和matplotlib无法安装问题
热门文章
- Visual Prolog 的 Web 专家系统 (10)
- vue 访问子组件示例 或者子元素
- Singleton单例模式是最简单的设计模式,它的主要作用是保证在程序执行生命周期中,使用了单类模式的类仅仅能有一个实例对象存在。
- java中native方法的使用
- Oracle 重置序列
- Objective-C中的关联(objc_setAssociatedObject,objc_getAssociatedObject,objc_removeAssociatedObjects)
- cmd命令速查手册
- 搭建nginx服务器和直播流媒体服务器
- spring利用ApplicationListener自启动
- Atitit.dart语言的特性&#160;&#160;编译时js语言大总结