[土狗之路]coursera 与 oj上的递归练习作业-- 单词翻转 角谷猜想
嗯,递归弄得我头好痛,不过只能忍住继续学习。
第一题:
编程题#1:单词翻转
来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩。)
注意: 总时间限制: 1000ms 内存限制: 65536kB
描述
输入一个句子(一行),将句子中的每一个单词翻转后输出。
输入
只有一行,为一个字符串,不超过500个字符。单词之间以空格隔开。所谓单词指的是所有不包含空格的连续的字符。
这道题请用cin.getline输入一行后再逐个单词递归处理。
输出
翻转每一个单词后的字符串,单词之间的空格需与原文一致。
样例输入
hello world.
样例输出
olleh .dlrow
直接贴上我的代码:
#include<iostream>
using namespace std;
int i = 0;
char input[501];
int recur() {char c = input[i];i++;if (c == ' ') {return 1;}if (c != ' '&&c != '\0') {recur();cout << c;}return 1;
}
int main() {cin.getline(input, 501);if (recur() == 1)//只有最外面一层的recur函数才会有返回值到这里,所以可以放心的打‘ ’cout << ' ';while (input[i] != '\0') {if (recur() == 1)//每次遇到空格,都会返回1,所以打印一个空格cout << ' ';}if (input[i] == '\0') {cout << endl;//最后输出换行符return 0;}
}
然后直接来下一题,角谷猜想:
编程题#2:角谷猜想
来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩。)
注意: 总时间限制: 1000ms 内存限制: 65536kB
描述
所谓角谷猜想,是指对于任意一个正整数,如果是奇数,则乘3加1,如果是偶数,则除以2,得到的结果再按照上述规则重复处理,最终总能够得到1。如,假定初始整数为5,计算过程分别为16、8、4、2、1。
程序要求输入一个整数,将经过处理得到1的过程输出来。
输入
一个正整数
输出
从输入整数到1的步骤,每一步为一行,每一部中描述计算过程,假定输入为7,则输出为:
7*3+1=22
22/2=11
11*3+1=34
34/2=17
17*3+1=52
52/2=26
26/2=13
13*3+1=40
40/2=20
20/2=10
10/2=5
5*3+1=16
16/2=8
8/2=4
4/2=2
2/2=1
最后一行输出"End",如果输入为1,直接输出"End"
样例输入
5
样例输出
5*3+1=16 16/2=8 8/2=4 4/2=2 2/2=1 End
#include<iostream>
using namespace std;
int calculate(int a) {if (a == 1) {cout << "End";//到1为止return 0;}else {if (a % 2 == 0) {cout << a << '/' << 2 << '=' << a / 2 << endl;a = a / 2;calculate(a);return 0;}if (a % 2 == 1) {cout << a << "*3+1=" << a * 3 + 1 << endl;//我也不知道我是有懒,反正中间的*3+1就是打印出来看看a = a * 3 + 1;calculate(a);return 0;}}
}
int main() {int a;cin >> a;calculate(a);return 0;
}
[土狗之路]coursera 与 oj上的递归练习作业-- 单词翻转 角谷猜想相关推荐
- [土狗之路]coursera C语言进阶练习题 排队游戏
直接上题: 编程题#3:排队游戏 来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩.) 注意: 总时间限制: 1000ms 内存限制: 65536kB ...
- [土狗之路]Coursera 北京大学C++ 魔兽世界:备战
这道题目中间因为学校正课耽误了很久,结果时间到了 coursera 把我的课都给锁了,哎,申请了助学金,慢慢弄吧,之前心态不好,确实错在了细节,现在debug以及代码重构了,重新把代码po上来,然后开 ...
- [土狗之路]coursera 北京大学C++ 魔兽世界:装备
上课加上乱七八糟的事情,好久没有更新博客,现在开始继续更新. 直接上题: 编程题#2: 魔兽世界之二:装备 来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后 ...
- OJ每日一练——角谷猜想
问题描述: 所谓角谷猜想,是指对于任意一个正整数,如果是奇数,则乘3加1,如果是偶数,则除以2,得到的结果再按照上述规则重复处理,最终总能够得到1.如,假定初始整数为5,计算过程分别为16.8.4.2 ...
- 洛谷OJ上的A+B花(zhuang)式(bi)解法
转眼间快到了8月,一想自己都毕业好久了,很怀念曾经在各大OJ上刷题的时光,今天无意在一个算法群里看到最近有个叫洛谷的oj网站貌似蛮火的,于是注册了一个下进去看一看,顺手打开了A+B problem,然 ...
- 【系统分析师之路】2008年上系统分析师上午综合知识真题
[系统分析师之路]2008年上系统分析师上午综合知识真题 章节No 章节 总分数 获得分 考点 心得 3 企业信息化战略 7 4 企业应用集成,信息系统概述,企业应用系统开发,数据仓库数据挖掘,企业会 ...
- Coursera登不上的全套方法
Coursera登不上的全套方法 序言 概述 登不上coursera的网站怎么办 看不了coursera的视频怎么办 最终在host中修改什么东西 序言 首先这篇文章是提供给那些在很多其他地方找方法, ...
- 【系统分析师之路】2018年上系统分析师综合知识真题
[系统分析师之路]2018年上系统分析师综合知识真题 2018年上系统分析师综合知识历年真题 [系统分析师之路]2018年上系统分析师综合知识真题 [2018上系分真题第01题:绿色] 01.面向对象 ...
- 【系统分析师之路】2009年上系统分析师综合知识真题
[系统分析师之路]2009年上系统分析师综合知识真题 2009年上系统分析师综合知识真题 [系统分析师之路]2009年上系统分析师综合知识真题 第三章 企业信息化战略 第五章 软件工程 第六章 需求工 ...
最新文章
- watch监听对象里面值的变化_Vue总结——computed和watch的用法和区别
- # Error in colSums(iris) : ‘x‘ must be numeric,# Error in rowSums(iris) : ‘x‘ must be numeric
- Jekyll博客统计访问量,阅读量工具总结--LeanCloud,不蒜子,Valine,Google Analytics
- 【深度学习】一文看尽深度学习各领域最新突破
- 新浪微博开放平台之OAuth2.0认证
- windows上的python能否在unix上使用_怎么用python在Windows系统下,生成UNIX格式文件
- CodeForces 297A Parity Game (脑补题)
- python LIST学习
- 送给测试行业年轻人们的一些建议
- 专业数字功放工作原理以及应用电路介绍
- 这就是为什么上帝和魔鬼都喜欢数学......
- 从网上自学老男孩python全栈的笔记-经历
- 腾讯云、声网、快手抢跑视频云
- 51单片机之中断的实现过程
- Hibernate的Disjunction和Conjunction
- 干货 | 一文读懂数据分析
- 用深度学习完成3D渲染任务的蹿红
- uniapp中开发模拟拼多多sku轮播选择器
- 美剧中50句经典俚语完美解析
- 数字藏品是怎么赋能的?
热门文章
- HBuilder的下载与使用(详细步骤)
- 【附源码】Python计算机毕业设计特大城市地铁站卫生防疫系统
- AtCoder 001 A BBQ Easy
- 【实战案例】python进行自动网上考试
- python安装第三方包_python 怎么安装第三方包
- 犯了这5个UI设计错误你的APP就得失败啦
- 原来,我连一个URL都写不对…
- 宽带运营商服务器未响应是什么意思,宽带拨号服务器无响应
- linux内存测试工具memtest,内存检测工具Memtest使用方法(图文教程)
- 云里黑白第一回——华硕mbr机械硬盘迁移到m.2固态,3秒开机