![](https://img-blog.csdnimg.cn/2019092715111047.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
pat乙级(Basic Level)真题练习
文章平均质量分 63
pat乙级(Basic Level)真题练习,用来为甲级打基础
VC变成了CV
这个作者很懒,什么都没留下…
展开
-
pat乙级测试用例常见问题集合
本题要注意的是A2是交错级数,会出现是0的情况,所以不能通过是0的情况就判断某一类数字不存在,这也是最后一个测试点过不了的原因。解决方法有:给A2设置一个flag,当满足两个条件时,输出N。1012数字分类思路简单,循环输入数字判断每个数字与5的余数,但是卡在最后一个测试用例没有通过,参考一下其他的文章。原创 2023-04-28 14:14:44 · 383 阅读 · 0 评论 -
1014科学计数法
当指数小于0时,在左边补0,大于0判断是否小数点的位置超过了尾数的长度,超过才补0.需要注意的一点是,补0的个数条件的判断。%[] 的意思是:读入此集合所限定的那些字符。例如 %[A-Z] 是指接受大写字母,一旦遇到非大写字母便停止接受,而 %[^] 是指不要读入此集合所限定的那些字符。科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+,即数字的整数部分。原创 2023-04-23 14:10:49 · 92 阅读 · 0 评论 -
1020完美数列解题方式
对于数组输入的方式,如果将scanf输入换成cin的输入方式,可能会出现超时的情况。这里放的解法是我想到的比较容易实现的。关于其他解法,我想到二分查找的方法,但是没有实现,卡在了中间数a[mid]和m*p那里,不知道怎么判断。参考以下的文章,low返回的就是能够到达的最大数列中不超过m*p的数字的下表。这个也需要分析才能理解,对于题目使用的二分查找的方法时间复杂度为O(nlogn)给定一个正整数数列,和正整数p,设这个数列中的最大值是M,最小值是m,如果M原创 2023-04-20 21:21:56 · 365 阅读 · 0 评论 -
1007、1009:与进制问题、输出问题
1.使用for循环顺手输出结果2.字符转数字是使用了字符数字与字符数字‘0’的差值获取了整型数字3.使用取余数的方式可以获取一串数字里面的元素。尽量观察输出结果与获取的输入之间的连接,能少写代码就少写。原创 2023-04-19 02:28:22 · 393 阅读 · 0 评论 -
1006部分A+B
思路:对于一串数字中需要将数字拆出一个一个单独判断,我首先想到将数字当作字符串读入,然后利用字符串的特性和自身方法判断字符串中字符是否和所给的字符相同,计算相同的个数count,直接利用count当作后来结果十进制数字的位数,传入方法中计算十进制数字的结果,让他们相加。直接利用原来的输入当作数字输入,使用余数方法可以将整串数字中的数字拆除,这个很好,不用使用字符串,但是要注意数字的范围,如果超出范围需要使用longlong类型的数字。1.字符串分行读取容易,但是同行输入困难,因为空格也会被当作字符读取,原创 2023-04-15 14:58:00 · 134 阅读 · 0 评论 -
1004福尔摩斯的约会 (20)
例如在星期的判断中,要求大写字母的范围A-G,我开始的时候只是判断是相同字母的情况下为大写字母则为true,过测试样例时出现Y相同的字母,但是在找map对应的星期几出现为空的情况,导致输出的结果错误。第2对相同的字符是'E',那是第5个英文字母,代表一天里的第14个钟头(于是一天的0点到23点由数字0到9、以及大写字母A到N表示);其中“DAY”是某星期的3字符缩写,即MON表示星期一,TUE表示星期二,WED表示星期三,THU表示星期。在一行中输出约会的时间,格式为“DAY HH:MM”,原创 2023-04-12 14:09:13 · 244 阅读 · 0 评论