您的位置:首页 > 其它

PAT乙级(2016.12.10)(解题思路+总结)

2016-12-11 16:47 169 查看
昨天去参加了乙级的考试,99,心塞,差一分就100啦。这段时间刷乙级的题,虽然大部分都算水题,但也发现很多小问题,也看到别人的一些巨简单的做法,还是有学到很多

说一下昨天几道题的解题思路,就不上代码了

A.判断题:

用两个数组存每道题的满分和答案,然后遍历学生,输入并比较,同时计算分数

B.最简分数:

三个分母通分,找在n1--n2之间的数,并且该数与k的最大公约数为1.可以单独写个求最大公约数的函数,后面都可以调用,方便一点。

就是这道题,有个测试点一直没过,扣了一分

C.计算谱半径:

就是遍历求平方和再开方,求最大值,用sqrt()就行,很简单

D.朋友数:

因为所有数都小于10^4,所以最大的为9+9+9+9=36,定义一个数组,下标为0-37,表示朋友证号,出现过则值为1,否则为0,最后遍历输出非0的就行

E.单身狗:

用三个数组完成:

1)isDog[100005](id在00000-99999之间)存放伴侣的id,没有伴侣的存-1

2)isCome[100005] 来party的存1,没来的存0

3)finally[10005]  存放最后输出的人   遍历0--100005

     有两种情况:a.来了 && 是单身狗

                             b.来了 && 不是单身狗 && 伴侣没有来

解题就这样,嗯,接下来就开始刷甲级了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: