当前位置:网站首页>PAT Class A 1019 Common Palindrome Numbers
PAT Class A 1019 Common Palindrome Numbers
2022-08-02 17:02:00 【keyboard sonata】
A number is a palindrome if it reads exactly the same from front to back as it does from back to front.
For example, 1234321 is a palindrome.
All one-digit numbers are palindromes.
We generally consider palindrome in decimal, but the concept of palindrome can also be applied to numbers in other bases.
An integer N has k+1 bits in base b, and the i-th digit is ai, (0≤i≤k), then N=∑ki=0(aibi).
In general, 0≤ai
If ai=ak−i is satisfied for any i, then N is a palindrome in base b.
0 is represented as 0 in any base, and is considered a palindrome.
Now given an integer N, please judge whether it is a palindrome in the base b representation.
Input format
A line containing two integers N and b.Output format
The output consists of two lines.If N is a palindrome in base b, the first line outputs Yes, otherwise it outputs No.
The second line, output the representation of N in base b, including k+1 integers, and it is required to output ak,ak−1,…,a0 in order, and the integers are separated by spaces.
Data Range
0≤N≤109,
2≤b≤109
Input Example 1:
27 2
Output Sample 1:
Yes
1 1 0 1 1
Input Sample 2:
121 5
Example output 2:
No
4 4 1
My solution:
#include using namespace std;const int N = 1e9 + 10;int n, b;vector nums;bool check(){for(int i = 0, j = nums.size() - 1; i < j; i ++, j --){if(nums[i] != nums[j]){return false;}}return true;}int main(){cin >> n >> b;if(!n) nums.push_back(0);while(n) nums.push_back(n%b), n/=b;if(check()) puts("Yes");else puts("No");cout << nums.back();for(int i = nums.size() - 2; i >= 0; i -- ) cout << " " << nums[i];return 0;}
边栏推荐
猜你喜欢
2022-02-14 第五小组 瞒春 学习笔记
DOM - Event Delegate
【Anaconda】一行语句解决Spyder启动问题
解决(An error happened during template parsing (template: “class path resource [templates/...]
[Fault Diagnosis] Weak Fault Diagnosis of Fan Bearing Based on PSO_VMD_MCKD Method
只出现一次的数字||| —— 哈希映射、异或位运算+分治思想
【时间序列模型】AR模型(原理剖析+MATLAB代码)
【SVM回归预测】基于LibSVM实现多特征数据的预测
js中的join()方法
XML和注解(Annotation)
随机推荐
BOM(Browser Object Model)浏览器对象模型相关概念
数据库三范式
解决(An error happened during template parsing (template: “class path resource [templates/...]
初识art-template模板引擎
ELK日志分析系统
基于ip的证书
2021 Huawei Cup Mathematical Modeling Contest E question - Ultra-Wideband (UWB) precise positioning problem under signal interference
加点字符就能让qq昵称很酷的神奇代码?
炎炎夏日打造一个属于自己的“便携小空调”吧
第六章-6.1-堆-6.2-维护堆的性质-6.3-建堆
2022-07-23 第六小组 瞒春 学习笔记
公司最大的内卷,是“管理错位”
初入c语言
散列表简述
双亲委派机制
加载事件的用法
Based on the SVM regression forecast 】 【 LibSVM realize the prediction of a characteristic data
容器中的Cgroup
2022-7-15 第五组 瞒春 学习笔记
为什么四个字节的float表示的范围比八个字节的long表示的范围要广