「PAT乙级真题解析」Basic Level 1016 (问题分析+完整步骤+伪代码描述+提交通过代码)

乙级的题目训练主要用来熟悉编程语言的语法和形成良好的编码习惯和编码规范。从小白开始逐步掌握用编程解决问题。

PAT乙级BasicLevelPractice 1016

问题分析

题目规定了一个概念: 正整数A的"DA部分", 给定四个正整数, A, DA, B, DB,
需要输出A的DA部分与B的DB部分的和. 这种给定具体规则/定义/概念的, 将对应规则用变成语言翻译成代码即可.

正整数A的"DA部分"

DA是一位整数, 所以根据DA的取值, 可以有正整数A的"0部分", 正整数A的"1部分", …, 正整数A的"9部分"
正整数A的"DA部分", 即正整数A各个数位值等于DA的部分排列得到的新数值。
比如"1231234"的"2部分"就是"22", “3部分"就是"33”, “4部分"就是"4”. 其实就是检查A中有多少个DA, 新的数就由多少个DA组成。

完整描述步骤

  1. 读入数据A、DA、B、DB
    • 因为需要遍历A各个数位上的数字, 所以存储成字符串会便于循环遍历
    • 因为遍历A时需要将各个数位上的数字跟DA对比, 所以DA存储成字符会便于比较
  2. 循环访问A各个数位上的数字, 如果等于DA, 计数器+1
  3. 生成 整数位数等于计数器数值, 且各个数位上的数字都是DA的数, 这个数就是PA
  4. 同理生成PB
  • 8
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

明仔的阳光午后

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值