
PAT
文章平均质量分 66
算法练习
尽兴-
时间宝贵
展开
-
PAT-1011 A+B 和 C(java实现)
int 数据类型位数:32 位表示范围:[-2,147,483,648, 2,147,483,647](即 -2^31 到 2^31 - 1)使用场景:适合表示比较小的整数,如计数、索引等。long 数据类型位数:64 位表示范围:[-9,223,372,036,854,775,808, 9,223,372,036,854,775,807](即 -2^63 到 2^63 - 1)使用场景:适合表示需要更大范围的整数,如时间戳、文件大小或大数量的计数等。溢出问题。原创 2024-11-27 21:26:30 · 424 阅读 · 0 评论 -
PAT-1010 一元多项式求导(java实现)
官方题目:这题目看的我很费劲,读了好几遍,理解题目之后还是很简单的。官方题目:设计函数求一元多项式的导数。(注:xn(n为整数)的一阶导数为nxn−1。原创 2024-11-27 17:39:47 · 405 阅读 · 0 评论 -
PAT-1009 说反话(java实现)
还是这种题好,多简单啊,题目多清晰明了啊,多让人增加学习的热情啊。给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。原创 2024-06-08 10:00:00 · 361 阅读 · 0 评论 -
PAT-1008 数组元素循环右移问题(java实现)
一看到要求“程序移动数据的次数尽量少” ,就感觉肯定有算法...🧠转不动了,直接请教互联网吧。一个数组A中存有N(>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移M(≥0)个位置,即将A中的数据由(A0A1⋯AN−1)变换为(AN−M⋯AN−1A0A1⋯AN−M−1)(最后M个数循环移至最前面的M个位置)。如果需要考虑程序移动数据的次数尽量少,要如何设计移动的方法?原创 2024-06-08 09:30:00 · 459 阅读 · 0 评论 -
PAT-1007 素数对猜想(java实现)
这道题其实就是找出孪生素数对呗,直接上让我们定义dn为:dn=pn+1−pn,其中pi是第i个素数。显然有d1=1,且对于n>1有dn是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。现给定任意正整数N(原创 2024-06-07 19:44:51 · 658 阅读 · 0 评论 -
PAT-1006 换个格式输出整数(java实现)
这个感觉是水题,课间娱乐吧让我们用字母B来表示“百”、字母S表示“十”,用12...n来表示不为零的个位数字n(原创 2024-06-07 17:11:56 · 287 阅读 · 0 评论 -
PAT-1005 继续(3n+1)猜想(java实现)
最近没时间,上午继续往下做了下,不太清楚为什么部分正确。我写的逻辑很容易懂,但是效率不高是按照理解写的,没有去深入优化,也只是做一个思路分享,后边我也附上满分答案,大家可以参考学习。卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里,情况稍微有些复杂。当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数。原创 2024-06-07 15:24:53 · 821 阅读 · 0 评论 -
PAT-1004 成绩排名(java实现)
这一关感觉还没第三关难,思路很清晰。原创 2024-05-31 21:12:05 · 239 阅读 · 0 评论 -
PAT-1003 我要通过!(java实现)
这第三关让我摸鱼搞了一个下午,思路很重要,开始的思路是是想通过题目条件进行判断。走了弯路后来回头看因该带着样例看规律。原创 2024-05-31 18:19:45 · 533 阅读 · 0 评论 -
PAT-1002 写出这个数( java实现)
在一行内输出 n 的各位数字之和的每一位,拼音数字间有 1 空格,但一行中最后一个拼音数字后没有空格。用汉语拼音写出和的每一位数字,这里可以将0-9每个数的拼音提前封到map里,通过数据取对对应拼音;用sc.nextLong()我测试也不行,索性直接new BigInteger(input);每个测试输入包含 1 个测试用例,即给出自然数 n 的值。⚠️注意点:自然数 n 的值很大,如果用sc.nextInt()显然不行超出范围;读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。原创 2024-05-31 00:26:19 · 261 阅读 · 0 评论 -
PAT-1001 害死人不偿命的(3n+1)猜想( java实现)
如果它是奇数,那么把 (3n+1) 砍掉一半。这样一直反复砍下去,最后一定在某一步得到 n=1。卡拉兹在 1950 年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证 (3n+1),以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国数学界教学与科研的进展……我们今天的题目不是证明卡拉兹猜想,而是对给定的任一不超过 1000 的正整数 n,简单地数一下,需要多少步(砍几下)才能得到 n=1。输出从 n 计算到 1 需要的步数。原创 2024-05-30 21:16:01 · 205 阅读 · 0 评论