首页 > 其他分享 >【练习】PAT 乙 1009 说反话

【练习】PAT 乙 1009 说反话

时间:2025-01-04 10:00:11浏览次数:7  
标签:空格 PAT 1009 输出 int 单词 str 反话 句首

题目

给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。

输入格式
测试输入包含一个测试用例,在一行内给出总长度不超过 80的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用 1个空格分开,输入保证句子末尾没有多余的空格。

输出格式
每个测试用例的输出占一行,输出倒序后的句子。

输入样例
Hello World Here I Come

输出样例
Come I Here World Hello

来源:PAT 乙 1009 说反话
——————————————————————

思路(注意事项)

  1. 判断一个字符是否等于空格,用单引号
str[i] != ' '
  1. 需要注意句首位置需要特殊考虑。因此将遍历的终止位置设置为-1。
  2. 压栈思想,来源:柳神

——————————————————————

题解

#include<iostream>
#include<string>
using namespace std;
#define rep(i, a, n) for(int i = a; i < n; i++)
int main()
{
	int temp = 0;//临时计数器:用来记录每个单词的长度
	string str;
	getline(cin, str);
	for(int i = str.length() - 1; i >= -1; i --)//从后往前遍历
	{
		if(str[i] != ' ' && i != -1)//未遇到空格之前,且不到句首时,统计当前遍历的单词长度
			temp ++;
		else //遇到空格或已到句首时,输出单词
		{
			rep(j, i + 1, i + 1 + temp)
				cout << str[j];
			if(i != -1) //不是句首则输出完一个单词则输出空格,句首则不输出
				cout << " ";
			temp = 0;
		}
	}
	return 0;
} 

标签:空格,PAT,1009,输出,int,单词,str,反话,句首
From: https://blog.csdn.net/2402_86344613/article/details/144923015

相关文章

  • SpreadJS 18.0 Patch
    全球最畅销的JavaScript电子表格,包含500多个Excel函数快速提供真正类似Excel的电子表格体验-完全不依赖Excel。创建财务、预算/预测、科学、工程、医疗保健、保险和许多其他类似的JavaScript电子表格业务应用程序。创建自定义JavaScript电子表格、高级网格、......
  • DispatcherServlet 请求处理源码分析
    业务处理流程请求匹配:通过HandlerMapping查找合适的处理器。拦截器前置处理:执行所有的HandlerInterceptor的preHandle方法。执行控制器方法:调用相应的控制器方法处理请求。数据处理:如果是视图返回,进行视图解析并渲染。如果是数据返回,使用HttpMessageConverter转换......
  • wx.canvasToTempFilePath
    wx.canvasToTempFilePath(Objectobject,Objectthis)以Promise风格调用:支持小程序插件:支持,需要小程序基础库版本不低于1.9.6微信Windows版:支持微信Mac版:支持相关文档:画布指南、canvas组件介绍功能描述把当前画布指定区域的内容导出生成指定大小的图片。在......
  • Python----Python爬虫(re、bs4、pyquery、xpath、json的使用)
    一、正则表达式的使用1.1、正则表达式        正则表达式是用来匹配字符串非常强大的工具,在其他编程语言中同样有正则表达式的概念,Python同样不例外,利用了正则表达式,我们想要从返回的页面内容提取出我们想要的内容就易如反掌了1.2、规则1.2.1、定位符字符描述^......
  • 【练习】PAT乙1033 旧键盘打字
    题目旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及坏掉的那些键,打出的结果文字会是怎样?输入格式:输入在2行中分别给出坏掉的那些键、以及应该输入的文字。其中对应英文字母的坏键以大写给出;每段文字是不超过10^......
  • [USACO18DEC] Cowpatibility G
    前言想想自己做,一共就两种\(\rm{trick}\)还不会?思路你发现两个不能和谐共处的奶牛,当且仅当他们的\(10\)个喜好不重因为要求时间复杂度不能是\(\mathcal{O}(n^2)\),所以肯定要想办法做到不枚举点对这个时候联想到之前的一道题[CEOI2010day2]pin,我们考虑利用......
  • DispatcherServlet 请求处理流程
    继承关系DispatcherServlet>FrameworkServlet>HttpServletBean>HttpServlet>GenericServlet>ServletServlet容器每次接收到请求时都会调用service()方法,子类HttpServlet复写了service()方法,内部会根据请求的类型(GET、POST等)调用相应的doGet()、doPost()等......
  • DispatcherServlet 九大组件
    九大组件SpringMVC的DispatcherServlet是一个Servlet,所有请求都会由DispatcherServlet处理和响应DispatcherServlet这个类中九个重要的属性,每个属性有不同的作用,如下:/**文件上传解析器*/@NullableprivateMultipartResolvermultipartResolver;/**国际化解析器(根......
  • [Java/Spring] 深入理解:Spring Web DispatcherServlet
    1概述:SpringWebDispatcherServletDispatcherServlet简介org.springframework.web.servlet.DispatcherServlet是一个Servlet,它接收所有的HTTP请求,并根据请求的信息将其分发给相应的处理器(Handler)进行处理。它是SpringMVC架构模式中的关键部分,将请求处理逻辑与实际的......
  • 架构师-设计模式-享元模式(FlyWeight Pattern)
    享元模式这个名词可能不像其他设计模式一样直接见名知义,可能不像代理模式、单例模式那样一眼看到就知道是干什么的。接下来解释一下享元这个词的含义,享为共享的意思,元就是对象的意思。通俗得来讲享元模式就是共享对象的意思,这种模式一般在系统底层优化使用得比较多,比如前面说过......