【PAT Advanced Level】1024. Palindromic Number (25)
来源:互联网 发布:粮食安全 大数据 编辑:程序博客网 时间:2024/05/22 16:56
回文数
#include<iostream> #include<vector> #include<set> #include<map> #include<queue> #include<algorithm> #include<string> #include<string.h> using namespace std; string Reverse(string a) { string ans; for(int i = 0; i < a.size(); ++i) ans.insert(ans.begin(), a[i]); return ans; } int char2int(char a) { return a-'0'; } char int2char(int a) { return a+'0'; } string Sum(string a, string b) { string ans; int carry = 0; int p; for(p = 0; p < a.size() && p < b.size(); ++p) { int tmp = char2int(a[p])+char2int(b[p])+carry; ans.push_back(int2char(tmp%10)); carry = tmp/10; } for( ;p < a.size(); ++p) { int tmp = char2int(a[p])+carry; ans.push_back(int2char(tmp%10)); carry = tmp/10; } for( ;p < b.size(); ++p) { int tmp = char2int(b[p])+carry; ans.push_back(int2char(tmp%10)); carry = tmp/10; } if(carry != 0) ans.push_back(int2char(carry)); return Reverse(ans); } int main() { string a; int k; cin>>a; scanf("%d",&k); bool flag = false; string result = a; int step = 0; do { if(result == Reverse(result)) { flag = true; cout<<result<<endl; printf("%d\n", step); break; } string b = Reverse(result); result = Sum(Reverse(b), Reverse(result)); step++; }while(step < k); if(!flag) { cout<<result<<endl; printf("%d\n", k); } return 0; }
- 【PAT Advanced Level】1024. Palindromic Number (25)
- 【PAT】【Advanced Level】1024. Palindromic Number (25)
- 1024. Palindromic Number (25) @ PAT (Advanced Level) Practise
- PAT (Advanced Level) 1024. Palindromic Number (25) 字符串反转相加
- 浙大 PAT Advanced level 1024. Palindromic Number (25)
- PAT (Advanced Level) Practise 1024 Palindromic Number (25)
- PAT (Advanced Level) Practise 1024 Palindromic Number (25)
- Pat(Advanced Level)Practice--1024(Palindromic Number)
- PAT (Advanced) 1024. Palindromic Number (25)
- 1024. Palindromic Number (25)【简易大数加法+回文】——PAT (Advanced Level) Practise
- 1019. General Palindromic Number (20) @ PAT (Advanced Level) Practise
- 【PAT Advanced Level】1019. General Palindromic Number (20)
- 【c++】PAT (Advanced Level)1019. General Palindromic Number (20)
- Pat(Advanced Level)Practice--1019(General Palindromic Number)
- PAT (Advanced Level) Practise 1019. General Palindromic Number (20)
- [PAT (Advanced Level) ]1019. General Palindromic Number 解题文档
- PAT (Advanced Level) Practise 1019 General Palindromic Number (20)
- 浙大 PAT Advanced level 1019. General Palindromic Number (20)
- Android GridView属性集合
- 【PAT Advanced Level】1023. Have Fun with Numbers (20)
- HDOJ1052田忌赛马
- ios block
- Codeforces Round #209 (Div. 2)
- 【PAT Advanced Level】1024. Palindromic Number (25)
- MapReduce工作机制总结
- Pearls
- db2 sqlcode sqlstate 说明
- 两个数字串 (顺序+逆序) 判断是否相等
- 系统架构师-基础到企业应用架构-系统建模[上篇]
- 本地时间(LocalTime)、系统时间(SystemTime)、格林威治时间(UTC-Time)、文件时间(FileTime)之间的转换
- 系统架构师-基础到企业应用架构-系统建模[中篇](上)
- Kali安装中文输入法