PAT(甲级)各题错点记录

为自己二刷PAT记录错点,防止重复失误,以及提高找bug和分析问题的能力

A1008.Elevator

  1. 自己所用方法:直接方法。
  2. 错点:
    1)犯了个傻。。。一行输入了4个数就忘记前面第一个数是N了,是看分行输入看习惯了。。。结果算样例数据算了好久都不对,算不出41,这样的错误简直不要再犯了。。。
  3. 学到了:
    1)柳:一个新写法——while处的判断也用cin>>a。在前面接收N时用cin>>a(相当于这个N接收的无用),这样当没有输入时while可自动中断循环。

A1015.Reversible Primes

  1. 自己所用方法:进制转换 + 素数,常规模板处理。唯一要注意的是逆置P进制转换成十进制时写对了但有点自己把自己绕晕了:是十进制转成P进制后,低位存在z数组第一位,所以逆置就是从高位开始算,则才从后往前算,如23的二进制是10111,但z数组里存的是11101,刚好是逆序,就从后面开始算得到29。
  2. 错点:
    1)进制转换忘了。。又去看了相关部分的书才写出。
    2)第一次提交一个测试点没过,看完书发现是输入1也要判No(以后要记得bool数组p的p[1]值要设为false了),修改之后AC了。
  3. 学到了:
    1)输入1要判No
    2)可以用if-else,if判N是否为素数,若不是则直接输出No,是的话就else处理逆置的数。

A1049.Counting Ones

  1. 自己所用方法:想尝试计算1-10、11-20、21-30…91-100中各出现的1数,为21。然后从101-200则为(21-1)+100,从201-300为(21-1),…再然后1-1000中出现的1数为以上总合,1001-2000也依次计算…但做着做着不知道规范应该设在哪,觉得这个方法肯定有问题,绕来绕去(也是对自己不行非常肯定),就去看解析了。
  2. 错点:
    1)无巧妙思路。且总结归纳出的式子一开始无法理解,单步跟了一遍才懂。感觉想从一个案例总结出这样的式子,让我自己来不太可能。。。
  3. 学到了:
    1)晴:此题用把当前位now设为1并判断左右数据left、right的可取范围(要保证小于N)的方法来计算1的个数。并设置一个变量a来辅助计算各left、now、right的值。

A1059.Prime Factors(写了结果没保存,第二次做再写吧)

<
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值