pat-1136. A Delayed Palindrome (20) 模拟
来源:互联网 发布:直播软件类似yy 编辑:程序博客网 时间:2024/05/21 07:55
本可以java大数就能搞定的问题
当时用java写完答案明明对了提交总是答案错误
很是无语
题意
任给我们一个数
让我们对这个数进行翻转相加
如果加和是个回文数 就找到了程序出口
如果不是继续迭代
输出过程 如果迭代10次没有找到就输出特定信息
分析
就是模拟高精度加法
场上没想清楚为什么要那么加
两个数相加只可能比原数多进一位
完全可以用正序和逆序两个数组里一加
不必管 低位高位 对齐的情况
因为是一个数与自己的逆序相加 所以一定位数相同且从低位加还是从高位加结果相同
如果是不同数的加法或是乘法
我们需要从两个数的最高位置 向低位运算 因为高位为原数据的低位
所以最后再反向输出
code
#include<bits/stdc++.h>using namespace std;char a[1010],b[1010];bool check(char aa[]){ int len = strlen(aa); for(int i=0;i<len-1-i;i++){ if(aa[i]!=aa[len-1-i])return 0; } return 1;}//回文检验int main(){ gets(a); bool f=0; int c=0; while(!check(a)){ if( c==10 ){ printf("Not found in 10 iterations."); f=1; break; } int lena = strlen(a)-1,tag=0; for(int i=lena;i>=0;i--){ b[tag++] = a[i]; }//将原数逆序 b[tag] = '\0'; printf("%s + %s",a,b); int i,y = 0; for(i=0;i<=lena;i++){//模拟加法 int dig = (a[i]-'0')+(b[i]-'0')+y; a[i] = '0'+dig%10; if(dig>9)y=1; else y = 0; } if(y)a[i] = '0'+y,a[++i] = '\0';//余数处理 else a[i] = '\0';//行尾结束控制 i--;//找回重点 for(int j=0;j<i-j;j++){//把顺序换回来 swap(a[j],a[i-j]); } printf(" = %s\n",a); c++; } if(!f)printf("%s is a palindromic number.",a); return 0;}
阅读全文
0 0
- pat-1136. A Delayed Palindrome (20) 模拟
- PAT甲级1136. A Delayed Palindrome (20)
- 1136. A Delayed Palindrome (20) 大数模拟
- 1136. A Delayed Palindrome (20)
- PAT-A1058 A+B in Hogwarts (20)(模拟)
- PAT乙级 1017. A除以B (20)--模拟大数除法
- PAT 1034 Head of a Gang 模拟
- PAT-B] 1017. A除以B [模拟]
- Codeforces Round #410 (Div.2) A.Mike and palindrome-模拟
- 【jzoj5359】【NOIP2017提高A组模拟9.12】【Arrays and Palindrome】
- pat(A) 2-06. 数列求和(模拟摆竖式相加)
- PAT-A1065 A+B and C (64bit)(模拟)
- PAT-B] 1011. A+B和C [模拟]
- PAT A 1008. Elevator (20)
- PAT A 1035. Password (20)
- PAT A Shortest Distance (20)
- PAT A 1061. Dating (20)
- PAT A 1077. Kuchiguse (20)
- 八大排序算法 Java 实现
- PAT (Basic Level) Practise (中文) 1079. 延迟的回文数 (20)
- 如何将无法显示的NTFS硬盘显示到桌面上
- 23 hashtable&unordered_set&unordered_map深度探索(学自Boolean)
- 详解Java中的clone方法 -- 原型模式
- pat-1136. A Delayed Palindrome (20) 模拟
- 你有没有过奋不顾身的爱情,然后痛彻心扉的失去,你有过吗?
- 数组
- TensorFlow之基本结构
- WebService远程调用技术--学习02
- 图论——最短路
- SparkSQL的前世今生
- 分布式事务之说说TCC事务
- poj 3661 runnning 区间dp