折纸问题
2016-03-20 16:54
281 查看
题目描述
请把纸条竖着放在桌⼦上,然后从纸条的下边向上⽅对折,压出折痕后再展 开。此时有1条折痕,突起的⽅向指向纸条的背⾯,这条折痕叫做“下”折痕 ;突起的⽅向指向纸条正⾯的折痕叫做“上”折痕。如果每次都从下边向上⽅ 对折,对折N次。请从上到下计算出所有折痕的⽅向。
给定折的次数n,请返回从上到下的折痕的数组,若为下折痕则对应元素为”down”,若为上折痕则为”up”.
测试样例:
1
返回:[“down”]
请把纸条竖着放在桌⼦上,然后从纸条的下边向上⽅对折,压出折痕后再展 开。此时有1条折痕,突起的⽅向指向纸条的背⾯,这条折痕叫做“下”折痕 ;突起的⽅向指向纸条正⾯的折痕叫做“上”折痕。如果每次都从下边向上⽅ 对折,对折N次。请从上到下计算出所有折痕的⽅向。
给定折的次数n,请返回从上到下的折痕的数组,若为下折痕则对应元素为”down”,若为上折痕则为”up”.
测试样例:
1
返回:[“down”]
class FoldPaper { public: string d="down"; string u="up"; vector<string> foldPaper(int n) { vector<string> result; while(n--){ bool isDown=true; vector<string> new_result; new_result.push_back(d); isDown=false; for(int i=0;i<result.size();i++){ new_result.push_back(result[i]); if(isDown){ new_result.push_back(d); isDown=false; } else{ new_result.push_back(u); isDown=true; } } result=new_result; } return result; } };
相关文章推荐
- 求逆序对(复杂度为nlogn)
- Android学习(一)
- 五边形
- 安卓adb.exe无法启动
- 配置App真机测试证书的流程 一览
- <香港科技大学html+css+js课堂笔记>week1--CSS部分
- 《PCANet: A Simple Deep Learning Baseline for Image Classification》
- Mysql视图使用总结
- A tutorial on Principle Component Analysis
- linux 常用命令
- 「Emacs org-mode(一)」用Org-mode实现GTD
- css中的div布局之巧用div
- 求自定类型元素序列的中位数
- 20145233韩昊辰 第(三)周总结
- 理解socket的阻塞
- (一)MongoDB简介
- SQL Server 未删除任何行
- NSAttributedString 的21种属性 详解
- ID3算法
- maven的Generating Project in Batch mode 卡住问题