当前位置: 首页 > news >正文

哪个网站注册域名便宜网络推广引流方式

哪个网站注册域名便宜,网络推广引流方式,网页的构成,建筑论坛网题目 地球人习惯使用十进制数,并且默认一个数字的每一位都是十进制的。而在PAT星人开挂的世界里,每个数字的每一位都是不同进制的,这种神奇的数字称为“PAT数”。每个PAT星人都必须熟记各位数字的进制表,例如“……0527”就表示最…

题目

地球人习惯使用十进制数,并且默认一个数字的每一位都是十进制的。而在PAT星人开挂的世界里,每个数字的每一位都是不同进制的,这种神奇的数字称为“PAT数”。每个PAT星人都必须熟记各位数字的进制表,例如“……0527”就表示最低位是7进制数、第2位是2进制数、第3位是5进制数、第4位是10进制数,等等。每一位的进制d或者是0(表示十进制)、或者是[2,9]区间内的整数。理论上这个进制表应该包含无穷多位数字,但从实际应用出发,PAT星人通常只需要记住前20位就够用了,以后各位默认为10进制。
在这样的数字系统中,即使是简单的加法运算也变得不简单。例如对应进制表“0527”,该如何计算“6203+415”呢?我们得首先计算最低位:3+5=8;因为最低位是7进制的,所以我们得到1和1个进位。第2位是:0+1+1(进位)=2;因为此位是2进制的,所以我们得到0和1个进位。第3位是:2+4+1(进位)=7;因为此位是5进制的,所以我们得到2和1个进位。第4位是:6+1(进位)=7;因为此位是10进制的,所以我们就得到7。最后我们得到:6203+415=7201。

输入格式:

输入首先在第一行给出一个N位的进制表(0 < N <=20),以回车结束。 随后两行,每行给出一个不超过N位的正的PAT数。

输出格式:

在一行中输出两个PAT数之和。

输入样例:

30527

06203

415

输出样例:

7201

来源:PAT 乙 1074 宇宙无敌加法器


思路(注意事项)

  • 注意:可能会有最后一个进位,不要漏掉!

纯代码

#include<bits/stdc++.h>
using namespace std;int main()
{string a, b, c;cin >> a >> b >> c;int n = a.size();vector<int> A(n), B(n), C(n), D;for (int i = a.size() - 1; i >= 0; i --) A[a.size() - i - 1] = a[i] - '0';for (int i = b.size() - 1; i >= 0; i --) B[b.size() - i - 1] = b[i] - '0';   for (int i = c.size() - 1; i >= 0; i --) C[c.size() - i - 1] = c[i] - '0';   int t = 0;for(int i = 0; i < n; i ++){if (B[i] + C[i] + t >= A[i] && A[i] != 0){D.push_back(B[i] + C[i] + t - A[i]);t = (B[i] + C[i] + t) / A[i];}else if (A[i] == 0 && B[i] + C[i] + t >= 10){D.push_back(B[i] + C[i] + t - 10);t = (B[i] + C[i] + t) / 10;}else{D.push_back(B[i] + C[i] + t);t = 0;}}if (t > 0) D.push_back(t);while (D.size() > 1 && D.back() == 0) D.pop_back();reverse (D.begin(), D.end());for (int i = 0; i < D.size(); i ++ ) cout << D[i];return 0; 
}

题解(加注释)

#include<bits/stdc++.h>
using namespace std;int main() {string a, b, c;cin >> a >> b >> c; // 输入三个字符串 a, b, cint n = a.size(); // 获取 a 的长度vector<int> A(n), B(n), C(n), D; // 定义数组 A, B, C 存储逆序数字,D 存储结果// 将字符串 a 逆序存储到数组 A 中for (int i = a.size() - 1; i >= 0; i--) A[a.size() - i - 1] = a[i] - '0';// 将字符串 b 逆序存储到数组 B 中for (int i = b.size() - 1; i >= 0; i--) B[b.size() - i - 1] = b[i] - '0';// 将字符串 c 逆序存储到数组 C 中for (int i = c.size() - 1; i >= 0; i--) C[c.size() - i - 1] = c[i] - '0';int t = 0; // 进位标志for (int i = 0; i < n; i++) {if (B[i] + C[i] + t >= A[i] && A[i] != 0) { // 如果 B[i] + C[i] + t >= A[i] 且 A[i] 不为 0D.push_back(B[i] + C[i] + t - A[i]); // 将差值存入结果数组 Dt = (B[i] + C[i] + t) / A[i]; // 更新进位} else if (A[i] == 0 && B[i] + C[i] + t >= 10) { //处理进制为10的情况D.push_back(B[i] + C[i] + t - 10); // 将差值存入结果数组 Dt = (B[i] + C[i] + t) / 10; // 更新进位} else {// 其他情况D.push_back(B[i] + C[i] + t); // 将和存入结果数组 Dt = 0; // 重置进位}}// 如果最后还有进位,将进位存入结果数组 Dif (t > 0) D.push_back(t);// 去掉结果中的前导零while (D.size() > 1 && D.back() == 0) D.pop_back();// 将结果数组 D 反转,恢复从高位到低位的顺序reverse(D.begin(), D.end());// 输出结果for (int i = 0; i < D.size(); i++) cout << D[i];return 0;
}
http://www.dinnco.com/news/78980.html

相关文章:

  • wordpress定义字体优势的seo网站优化排名
  • 网站商品图片怎么做做网络推广好吗
  • 网店美工主要学什么武汉seo全网营销
  • 做关于什么内容的网站什么推广软件效果好
  • 租车网站建设十大互联网平台
  • 网站设计器天津网站推广
  • 做网站怎么设置背景站长之家
  • 网页制作与网站建设宝典 第2版网络营销师证书查询
  • php可以做视频网站吗培训平台有哪些
  • 邵阳网站优化武汉网站排名推广
  • 做网站前端后端ui什么意思优化关键词具体要怎么做
  • 各大网站排名优化大师下载旧版本安装
  • wordpress 删除模板文件百度网站优化方案
  • 企业商用网站建设企划书最新新闻事件今天
  • 网站的注册和登录怎么做新东方小吃培训价格表
  • 东莞创意网站设计效果图营销型企业网站有哪些
  • 做美食网站的图片大全网站联盟广告
  • 杭州网站建设appseo优化流程
  • 泉州做网站优化疫情最新消息今天封城了
  • 本地网站怎么做武汉电脑培训学校有哪些
  • 网站设计师需要什么知识与技能怎么注册一个自己的网址
  • 有什么做礼品的卖家网站深圳百度公司地址在哪里
  • 梁平网站建设大侠seo外链自动群发工具
  • 武汉装修网站建设百度搜索排名机制
  • wordpress添加新页面跳转网站权重优化
  • 新的网站做淘宝客今日头条最新消息
  • 1g做网站空间mac923水蜜桃923色号
  • 曲靖 曲靖网站建设软件(app)开发可以免费领取会员的软件
  • 免费网站提交入口地推公司
  • 网络专业的网站建设东莞网络公司排行榜