pat a 1024 Palindromic Number
来源:互联网 发布:mac osx vmware tools 编辑:程序博客网 时间:2024/05/02 00:46
生词:palindromic [计]回文的,[医]复发的;
#include<cstdio>#include<cstring>struct bign{int len;int d[1000];bign(){len=0;memset(d,0,sizeof(d));}}; bign change(char str[]){bign a;a.len=strlen(str);for(int i=0;i<a.len;i++){a.d[i]=str[a.len-1-i]-'0';}return a;}bign reverse(bign a){bign d;d.len=a.len;for(int i=0;i<a.len;i++){d.d[i]=a.d[a.len-1-i];}return d;}bign add(bign a,bign b){bign c;int carry=0,temp=0;//for(int i=0;i<a.len||b.len;i++){错误:i<a.len||b.len=1,因为b.len>0 for(int i=0;i<a.len||i<b.len;i++){temp=a.d[i]+b.d[i]+carry;c.d[c.len++]=temp%10;carry=temp/10;}if(carry!=0){c.d[c.len++]=carry;}return c;}bool judgePa(bign a){bign b;b=reverse(a);for(int i=0;i<a.len;i++){if(a.d[i]!=b.d[i]){return false;}}return true;}void printBign(bign a){for(int i=a.len-1;i>=0;i--){printf("%d",a.d[i]);}printf("\n");}void judge(bign a,int b){bign temp=a;//for(int i=1;i<=b;i++){错因:这里的i记录的是执行回文检查的次数,题目要求是执行变换的次数 for(int i=0;i<b;i++){//将原本的i<=b改为i<b,操作次数零次的不会执行,这个改动我很是看书才发现的,自己很没自信,需要再多编程培养感觉!!!!!!!! if(judgePa(temp)){printBign(temp);printf("%d",i);return;}else{temp=add(temp,reverse(temp)); }}printBign(temp);printf("%d",b); return;}int main(){char A[105]={};int B=0;scanf("%s %d",A,&B);bign a=change(A);judge(a,B);return 0; }
阅读全文
0 0
- pat a 1024 Palindromic Number
- PAT-A 1024. Palindromic Number
- pat 1024 Palindromic Number
- PAT 甲级 1024 Palindromic Number
- PAT A 1019.General Palindromic Number (20)
- PAT A 1024. Palindromic Number (25)
- PAT-A 1019. General Palindromic Number
- PAT(A) - 1024. Palindromic Number (25)
- PAT(A) - 1019. General Palindromic Number (20)
- PAT-A 1019. General Palindromic Number (20)
- PAT-A-1019. General Palindromic Number (20)
- PAT-A-1019. General Palindromic Number (20)
- PAT-A-1024. Palindromic Number (25)
- 浙大PAT 1024题 1024. Palindromic Number
- Pat(Advanced Level)Practice--1024(Palindromic Number)
- PAT 1024. Palindromic Number
- PAT 1024. Palindromic Number
- PAT 1024. Palindromic Number
- 为什么spark中只有ALS
- NOIP2017颓废记。。。。。。
- 50道java面试题 适用于准入职Java程序员
- C++快速排序
- NOIP2017提高组解题报告
- pat a 1024 Palindromic Number
- Winform窗体间传值(委托)
- IntelliJ IDEA详细安装步骤
- telnet不到虚拟机的某个端口问题
- 使用java程序对图片宽高及格式进行重置(包括透明背景的图片)
- Centos7.3安装vsftp服务
- Fact()的返回值类型
- Java整理(六)IO
- 3.3从远程克隆