目录
🧡1019 General Palindromic Number(20)
💟这里是CS大白话专场,让枯燥的学习变得有趣!
💟没有对象不要怕,我们new一个出来,每天对ta说不尽情话!
💟好记性不如烂键盘,自己总结不如收藏别人!
💌数字&字符串处理也是PAT的考试重点,记录一下常用易混语法o(╥﹏╥)o
题目链接:PTA | 程序设计类实验辅助教学平台
💌将十进制数N转换成b进制数,判断其是否为对称数。
- #include
- #include
- #include
- using namespace std;
- vector<int> s; //存储b进制数
-
- void trans(int N,int b){
- int i=0;
- while(N){
- s.push_back(N%b);
- N = N/b;
- }
- }
-
- void out(vector<int> s){
- //倒序输出
- for(int i=s.size()-1;i>=0;i--){
- cout << s[i];
- if(i) cout << " ";
- else cout << endl;
- }
- }
-
- int main(){
- int N,b;
- cin >> N >> b;
- trans(N,b);
- for(int i=0;i
size()/2;i++){ - if(s[i]==s[s.size()-1-i]) continue;
- else {
- cout << "No" << endl;
- out(s);
- return 0;
- }
- }
- cout << "Yes" << endl;
- out(s);
- return 0;
- }
题目链接:PTA | 程序设计类实验辅助教学平台
💌给出一个数N,经过不多于K次的翻转相加,判断是否会生成对称数。
- #include
- #include
- using namespace std;
- string N;
-
- void add(string t) {
- int len=N.length(),add=0;
- for(int i=0;i
- N[i] = N[i]+t[i]+add-'0';
- if(N[i] > '9') {
- N[i] = N[i] - 10;
- add = 1;
- }
- else add = 0;
- }
- if(add) N.append("1");
- reverse(N.begin(), N.end());
- }
-
- int main() {
- int K, k;
- cin >> N >> K;
- for(k=0;k<=K;k++){
- string t=N;
- reverse(t.begin(), t.end());
- if(N == t || k == K) break;
- add(t);
- }
- cout << N << endl << k << endl;
- return 0;
- }
🧡1100 Mars Numbers(20)
💌翻译数字与火星文。
- #include
- #include
- #include
- using namespace std;
- string low[13] = {"tret","jan","feb","mar","apr","may","jun","jly","aug","sep","oct","nov","dec"};
- string high[13] = {" ","tam","hel","maa","huh","tou","kes","hei","elo","syy","lok","mer","jou"};
-
- void EarthToMars(int t){
- int a = t/13;
- int b = t%13;
- if(a&&b) cout << high[a] << " " << low[b] << endl;
- //注意低位为0时不用输出
- else if(a&&!b) cout << high[a] << endl;
- else cout << low[b] << endl;
- }
-
- void MarsToEarth(string s){
- int t1=0,t2=0;
- //截取高位(若没有高位,则为低位)
- string s1 = s.substr(0,3),s2;
- //若有高位,截取低位
- if(s.length()>4) s2 = s.substr(4,3);
- for(int i=1;i<13;i++){
- if(s1==low[i] || s2==low[i]) t2 = i;
- if(s1==high[i]) t1 = i;
- }
- cout << t1*13+t2 << endl;
- }
-
- int main(){
- int N;
- string s;
- cin >> N;
- getchar();
- for(int i=0;i
- //读取一行
- getline(cin, s);
- //如果是地球字符
- if(s[0]>='0'&&s[0]<='9')
- EarthToMars(stoi(s));
- else
- MarsToEarth(s);
- }
- return 0;
- }
🧡常用语法
- #include
- #include
- #include
- using namespace std;
-
- int main(){
-
- //string 转 int
- string a;
- cin >> a;
- cout << stoi(a); //整体转换
-
- int b = a[0]-'0'; //计算单个数值
- cout << b;
-
- getchar(); //读取一位
-
- string s;
- getline(cin, s); //读取一行
- s.append("1"); //字符串扩展
- reverse(s.begin(), s.end()); //字符串翻转
- s.substr(0,3); //从0位开始截取前3位
-
- return 0;
- }
-
相关阅读:
API 自动化测试难点总结与分享
C语言指针详解——必备7大知识点
机器学习的集成方法(bagging、boosting)
Hudi extraMetadata 研究总结
Docker的部署与基本使用
Distributed Systems MIT - Introduction总结
Java项目校园兼职平台(三层架构+设计模式重构版)(含代码)
磁盘分区如何分? 电脑磁盘分区免费软件指南!
Samtec连接器技术前沿 | 全新对准功能确保测试和测量应用中的精确对准
【SpringMVC】web.xml和spring_mvc.xml文件配置
-
原文地址:https://blog.csdn.net/qq_41847894/article/details/127757729