洛谷 P1255数楼梯 题解
我看题解区里的大佬们都只写了二十几行,那么我这个只能算是“口胡的”(切记不要跟风玩梗)。有一个重要原因:大佬们都是把递推公式直接套到高精度里,我却没这么做。
首先,把高精度写好(注意在加之前要先弄成长度一样):
string add(string str1,string str2)
{string str;int len1=str1.length();int len2=str2.length();if(len1<len2){for(int i=1;i<=len2-len1;i++)str1="0"+str1;}else{for(int i=1;i<=len1-len2;i++)str2="0"+str2;}len1=str1.length();int cf=0;int temp;for(int i=len1-1;i>=0;i--){temp=str1[i]-'0'+str2[i]-'0'+cf;cf=temp/10;temp%=10;str=char(temp+'0')+str;}if(cf!=0) str=char(cf+'0')+str;return str;
}
然后主函数部分就比较简单了:
int main()
{string x,y,z;x='1';y='2';int n;cin>>n;for(int i=3;i<=n;i++){z=add(x,y);x=y;y=z;}cout<<z;return 0;
}
效果非常好,当你输入5000时,它会先卡半秒,然后突然出来一大堆,但是这个只得了,后来我发现忽略了两个特殊情况,如果输入是1或2,它就无法识别。
#include<bits/stdc++.h>
using namespace std;
string add(string str1,string str2)
{string str;int len1=str1.length();int len2=str2.length();if(len1<len2){for(int i=1;i<=len2-len1;i++)str1="0"+str1;}else{for(int i=1;i<=len1-len2;i++)str2="0"+str2;}len1=str1.length();int cf=0;int temp;for(int i=len1-1;i>=0;i--){temp=str1[i]-'0'+str2[i]-'0'+cf;cf=temp/10;temp%=10;str=char(temp+'0')+str;}if(cf!=0) str=char(cf+'0')+str;return str;
}
int main()
{string x,y,z;x='1';y='2';int n;cin>>n;if(n==1){cout<<"1";return 0;}if(n==2){cout<<"2";return 0;}for(int i=3;i<=n;i++){z=add(x,y);x=y;y=z;}cout<<z;return 0;
}
因为作者非常糟糕,所以若有不足请在评论区中指出。
洛谷 P1255数楼梯 题解相关推荐
- 【洛谷P1255 数楼梯】
P1255 数楼梯 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 看上去是个斐波那契数列,其实是高精度计算啦 虽说是个水题,但可以练习一下高精度计算,之前我都是顺序输入,通过指针偏 ...
- 洛谷 P1255 数楼梯 70
题目描述 楼梯有N阶,上楼可以一步上一阶,也可以一步上二阶. 编一个程序,计算共有多少种不同的走法. 输入输出格式 输入格式: 一个数字,楼梯数. 输出格式: 走的方式几种. 输入输出样例 输入样例# ...
- 洛谷 P1255 数楼梯(dp + 高精度)
传送门 大致题意 : 经典走楼梯问题 分析 : 用斐波那契数列来解即可, f[i] 表示从1走到 i 的方案数, 属性为数量, 一次可上1步或2步 可推出状态转移方程 : f[i] = f[i-1] ...
- 洛谷P2507 [SCOI2008]配对 题解(dp+贪心)
洛谷P2507 [SCOI2008]配对 题解(dp+贪心) 标签:题解 阅读体验:https://zybuluo.com/Junlier/note/1299251 链接题目地址:洛谷P2507 [S ...
- 洛谷P4568 [JLOI2011] 飞行路线 题解
洛谷P4568 [JLOI2011] 飞行路线 题解 题目链接:P4568 [JLOI2011] 飞行路线 题意: Alice 和 Bob 现在要乘飞机旅行,他们选择了一家相对便宜的航空公司.该航空公 ...
- 洛谷P1262 间谍网络题解
洛谷P1262 间谍网络题解 题目大意 题目描述 由于外国间谍的大量渗入,国家安全正处于高度的危机之中.如果 A 间谍手中掌握着关于 B 间谍的犯罪证据,则称 A 可以揭发 B.有些间谍收受贿赂,只要 ...
- 【洛谷P3960】列队题解
[洛谷P3960]列队题解 题目链接 题意: Sylvia 是一个热爱学习的女孩子. 前段时间,Sylvia 参加了学校的军训.众所周知,军训的时候需要站方阵. Sylvia 所在的方阵中有 n×m ...
- 洛谷P3205 [HNOI2010]合唱队 题解
洛谷P3205 [HNOI2010]合唱队 题解 题目链接:P3205 [HNOI2010]合唱队 题意: 为了在即将到来的晚会上有更好的演出效果,作为 AAA 合唱队负责人的小 A 需要将合唱队的人 ...
- 洛谷P2312 解方程题解
洛谷P2312 解方程题解 题目描述 已知多项式方程: \[a_0+a_1x+a_2x^2+\cdots+a_nx^n=0\] 求这个方程在 \([1,m]\) 内的整数解(\(n\) 和 \(m\) ...
最新文章
- 如何在一场面试中展现你对Python的coding能力?| 技术头条
- 关于ValueError: Unknown projection ‘3d‘报错的解决方法
- arch linux引导不启动_Linux 内核源代码的目录结构
- 你这种直来直去的英语,买家受不了
- centos mysql下载64位_CentOS7 64位安装mysql教程
- WPF 绘制对齐像素的清晰显示的线条
- shell 查看空行与删除空行
- 镭神智能C32 ROS Rviz使用教程
- Android计算器代码分析
- 北京圣思园XML培训视频教程下载
- android 华为部分手机剪裁图片模糊问题
- 2019 秦皇岛CCPC赛后总结
- 【机器学习基础】贝叶斯神经网络
- 效率倍增!4 个鲜为人知却功能强大的魔法命令!
- 学习各种计算机知识网站推荐
- 手机抖音设置自动切换下一个视频
- Pch文件如何配置?
- 使用UltraISO(软碟通)制作系统盘 / U盘启动-linux版、 双系统的运行
- python股票量化指标_用Python可视化股票指标
- maya2020卸载不干净安装不了_maya2020卸载不干净_maya怎样卸载干净,如何完全彻底删除清理干净MAYA各种残留注册表和文件?......
热门文章
- 15.Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?
- 用python绘制科赫雪花分形图,迭代
- Python合并两个列表的方法
- Shell脚本:数组(穿插四种排序算法)
- luogu P4961 小埋与扫雷
- 推荐系统的常用算法,选择,漫谈,推荐系统开源软件汇总
- 半导体物理实验 04 - | 椭圆仪测量薄膜厚度
- Rolling back JDBC Connection [org.sqlite.jdbc4.JDBC4Connection
- react-router v6
- C++标准库中的数学函数