Bailian4104 单词翻转(POJ NOI0107-27)【堆栈+字符流】
问题链接:POJ NOI0107-27 单词翻转。
单词翻转
总时间限制:
1000ms
内存限制:
65536kB
描述
输入一个句子(一行),将句子中的每一个单词翻转后输出。
输入
只有一行,为一个字符串,不超过500个字符。单词之间以空格隔开。
输出
翻转每一个单词后的字符串,单词之间的空格需与原文一致。
样例输入
hello world
样例输出
olleh dlrow
问题链接:Bailian4104 单词翻转
问题分析:实现单词翻转大致有两种方法,一是单词的前后字母对调,二是使用堆栈实现。
程序说明:
本程序构造了一个堆栈实现单词翻转。自己实现需要对堆栈的机制十分通晓,可以定制的非常简单。
本程序直接对输入的字符流进行处理,需要更高的编程技巧。需要考虑没有回车而直接EOF的情形。
本程序是CV实现的,使用了参考链接中的代码。
参考链接:HDU1062 Text Reverse题记:(略)
AC的C语言程序如下:
/* Bailian4104 单词翻转 */#include <stdio.h>#define MAXSTACK 500char stack[MAXSTACK];
int pstack;void push(char c)
{stack[pstack++] = c;
}char pop()
{return stack[--pstack];
}int main(void)
{char c;pstack = 0;for(;;) {c = getchar();if(c == ' ' || c == '\n' || c == EOF) {while(pstack)putchar(pop());if(c != EOF)putchar(c);} elsepush(c);if(c == '\n' || c == EOF)break;}return 0;
}
Bailian4104 单词翻转(POJ NOI0107-27)【堆栈+字符流】相关推荐
- 信息学奥赛一本通 1144:单词翻转 | OpenJudge NOI 1.7 27
[题目链接] ybt 1144:单词翻转 OpenJudge NOI 1.7 27:单词翻转 [题目考点] 1.多字符串处理 用二维字符数组保存多个字符串 用string类数组保存多个字符串 用指针数 ...
- 1.7 编程基础之字符串 27 单词翻转 4分 python
""" 1.7 编程基础之字符串 27 单词翻转 4分 http://noi.openjudge.cn/ch0107/24/ https://blog.csdn.net/ ...
- 1.7-27编程基础之字符串 单词翻转
27:单词翻转 查看提交统计提问 总时间限制: 1000ms 内存限制: 65536kB 描述 输入一个句子(一行),将句子中的每一个单词翻转后输出. 输入 只有一行,为一个字符串,不超过500个字符 ...
- [土狗之路]coursera 与 oj上的递归练习作业-- 单词翻转 角谷猜想
嗯,递归弄得我头好痛,不过只能忍住继续学习. 第一题: 编程题#1:单词翻转 来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩.) 注意: 总时间限制: ...
- 信息学奥赛一本通(1144:单词翻转)
1144:单词翻转 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 18986 通过数: 9390 [题目描述] 输入一个句子(一行),将句子中的每一个单词 ...
- 单词翻转(信息学奥赛一本通-T1144)
[题目描述] 输入一个句子(一行),将句子中的每一个单词翻转后输出. [输入] 只有一行,为一个字符串,不超过500个字符.单词之间以空格隔开. [输出] 翻转每一个单词后的字符串,单词之间的空格需与 ...
- OpenJ_Bailian - 4104 G - 单词翻转
OJ地址:https://vjudge.net/problem/OpenJ_Bailian-4104 输入一个句子(一行),将句子中的每一个单词翻转后输出. Input 只有一行,为一个字符串,不超过 ...
- 单词翻转字母顺序c语言,单词翻转(C语言实现)
题目:单词翻转.输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变,句子中单词以空格符隔开.为简单起见,标点符号和普通字母一样处理.例如,输入"I am a student.&q ...
- 编程之法—实现单词翻转
单词翻转 在输入一个英文句子,翻转句子中的单词的顺序.要求单词内字符的顺序不变,句子中单词以空格符隔开.为简单起见,标点符号和普通字母处理一样.例如"I am a student." ...
最新文章
- Python3中参数*args和**kwargs介绍
- hihocoder 1638:多级并查集
- 点击按钮出现图片_坪山电动车上牌丨部分手机点击拍摄按钮,页面没有反应,无法拍摄人脸图片或上传照片,为什么?...
- java 远程udp_远程客户端不接收UDP数据包
- Centos7安装时引导错误以及解决方案
- 阿里《Java手册》做一个有技术情怀的人
- 作者:祝天刚(1988-),男,中国科学院大学硕士生。
- 持续集成持续部署持续交付_自动持续开发和交付混合移动应用程序
- 《Reids 设计与实现》第四章 整数集合和压缩列表
- MySQL 练习 创建表格并修改
- 【转载】堆和栈的内存分配
- 上位机与1200组态步骤_新入S7-1200系统值得注意几点(博图平台)
- 【深度学习】Colaboratory使用:Google云盘挂载及GPU使用
- DAY 11 | 自学前端第十一天
- Linux安装 conda 时报错:WARNING: md5sum mismatch
- ubuntu 删除opencv4_ubuntu彻底卸载opencv
- 2022年11月编程语言流行度排名
- 解决国外链接下载软件速度慢的方法
- NOIP2011提高组初赛不定项选择第5题
- 服务器上pdf文档无法删除,怎么对PDF文件进行编辑,PDF怎么删除空白页
热门文章
- AppCan VS PhoneGap - 对比两大移动开发平台
- [E]PSM算法简析
- 带参数的update mysql_mysql参数sql_update 说明
- androidstudio打包apk 文件_Android 缩小apk体积过程记录
- 荣耀v30鸿蒙5g是什么版本,标配双模5G全国通手机 荣耀V30马上就要来了
- SpringBoot +MyBatisPlus打印不出sql语句
- Spring集成Quartz定时任务
- 详解:Oracle 数据库空间表、自定义用户、权限管理、序列、同义词、索引
- Intellij IDEA的配置
- 不同角色给rules重新赋值校验规则