PAT刷题(五、简单模拟)

分享了大学期间挑战PAT甲级算法题的经历与心得,包括多项式运算、距离计算等题目的解题思路及代码实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

大学期间项目做了不少,而在算法题方面还是个小白。借着考研机会,把PAT甲级刷一遍,同时记录一下心得。主要参考的是柳神的题解,略过了不会考或考的可能性很小的题。如果做法和题解不大一样,就贴一下自己的代码。

1002 A+B for Polynomials (25)

思路

使用数组存储项的系数,下标i代表项的指数,最后从大到小输出系数非0的项。

链接

原题链接
题解

1009 Product of Polynomials (25)

思路

求多项式乘法的结果,先存储第一个式子的系数与项,在输入第二个式子时,将输入项与第一个式子中每个项相乘即可。注意相乘结果的项指数最大为2000,数组要开大一些。

链接

原题链接
题解

1031 Hello World for U (20)

思路

根据n%3的不同情况,分别计算出n1和n2就能解出。

链接

原题链接
题解

1042 Shufling Machine (20)

思路

用两个数组分别存储牌的初始顺序和移动结束的顺序,最后根据编号和牌的对应顺序输出即可。

链接

原题链接
题解

1046 Shortest Distance (20)

思路

用数组dis存储第i个点到第1个点之间的距离,并计算总长度。最终第i个点与第j个点间的距离为min(dis[i]-dis[j],sum-dis[i]+dis[j])。

链接

原题链接
题解

1065 A+B and C (64bit) (20)

思路

long long int能存储的数据,被我硬生生做成了string类型的大数加减比较。。。千辛万苦才AC,看到题解后人都傻了(;´д`)ゞ

踩过的坑

int能表示的最大值为(2^31 - 1),long long int能表示的最大值为(2^63 - 1)。

链接

原题链接
题解

简单模拟的题只要有思路就能很快解出,剩下的等复试后再刷~
剩下的简单模拟相关题目:1105

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值